Simple Demo:<!--http://community.csdn.net/Expert/TopicView3.asp?id=5619611--><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Untitled Page</title> <script type="text/javascript"> function foo() { var xml = document.getElementById("TextArea1").value; var doc = createXmlDocFromXml(xml); var node =doc.selectSingleNode("//list/book[@ID='601']"); alert(node.getAttribute("ID")); alert(node.getAttribute("name")); alert(node.text); }
function createXmlDocFromXml(xml) { var xmlDoc; // cross browser try { xmlDoc = document.implementation.CreateDocument("", "", null); } catch(e) { try { xmlDoc = new ActiveXObject("MSXML2.DOMDocument.3.0"); xmlDoc.resolveExternals = true; } catch (e) { throw new Error("not support to create a document."); } } // begin load var success = xmlDoc.loadXML(xml);
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Untitled Page</title>
<script type="text/javascript">
function foo()
{
var xml = document.getElementById("TextArea1").value;
var doc = createXmlDocFromXml(xml);
var node =doc.selectSingleNode("//list/book[@ID='601']");
alert(node.getAttribute("ID"));
alert(node.getAttribute("name"));
alert(node.text);
}
function createXmlDocFromXml(xml)
{
var xmlDoc;
// cross browser
try {
xmlDoc = document.implementation.CreateDocument("", "", null);
} catch(e) {
try {
xmlDoc = new ActiveXObject("MSXML2.DOMDocument.3.0");
xmlDoc.resolveExternals = true;
}
catch (e) {
throw new Error("not support to create a document.");
}
}
// begin load
var success = xmlDoc.loadXML(xml);
// load failly
if(!success) return null;
return xmlDoc;
}
</script>
</head>
<body>
<textarea id="TextArea1" style="width: 480px; height: 169px"><?xml version="1.0" encoding="gb2312"?>
<?xml:stylesheet type="text/xsl" href="bookList2.xsl"?>
<list>
<book ID="601" name="book1">你看我的
</book>
<book ID="602" name="book2">他的
</book>
</list></textarea>
<br />
<input id="Button1" type="button" value="button" onclick="foo()" />
</body>
</html>
http://www.cnblogs.com/wucf2004/archive/2007/05/25/575012.html
http://www.blogjava.net/xuechen0721/articles/85257.html
http://ttyp.cnblogs.com/archive/2004/11/30/71020.aspx
那你看看
var xmlDoc =
new ActiveXObject("Microsoft.XMLDOM");
var currNode;
xmlDoc.async = false;
xmlDoc.load("Data.xml");
if
xmlDoc.parseError.errorCode != 0)
{
//如果打开文件出错
var myErr = xmlDoc.parseError;
document.write
("You have error " + myErr.reason);
}
else
{
document.write("<hr size=1>");
xmlDoc.setProperty
("SelectionLanguage", "XPath");
currNode =
xmlDoc.documentElement.childNodes[1];
//取得<rs:data>部分
alert(currNode.childNodes[0]
.attributes[0].value);
//测试结果 for(i=0;i<currNode.
childNodes.length;i++)
//遍历每个'数据行'
{
for(j=0;j<currNode.childNodes[i].
attributes.length;j++)
//遍历行的每个属性
{
document.write(currNode.childNodes[i].
attributes[j].name
+ " : " + currNode.childNodes[i].
attributes[j].value + "<BR>");
}
document.write("<hr size=1>");
}
}
</script>