比如votes.xml文件是这样的<?xml version="1.0" encoding="utf-8"?>
<votes id = "votesroot">
<option id = "70" movie = "建国大业" />
<option id = "71" movie = "当幸福来敲门" />
<option id = "72" movie = "风声" />
<option id = "73" movie = "2012" />
<option id = "74" movie = "后天" />
<option id = "75" movie = "花木兰" />
</votes>-----index.html<script type="text/javascript">
//读取xml的函数
function loadXMLDoc(dname) {
try {
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
catch(e) {
try {
xmlDoc=document.implementation.createDocument("","",null);
} catch(e) {alert(e.message);}
}
try {
xmlDoc.async=false;
xmlDoc.load(dname);
return(xmlDoc);
} catch(e) {alert(e.message);}
return(null);
}var xmlDoc=loadXMLDoc("votes.xml");
var root = xmlDoc.documentElement;
alert(root.InnerText);
</script>结果是 不管alert(root.innerText);还是alert(root.innerHTML);其结果都为undefined请问我该如何读取这个votes里边的东西? <option id = "70" movie = "建国大业" />
<option id = "71" movie = "当幸福来敲门" />
<option id = "72" movie = "风声" />
<option id = "73" movie = "2012" />
<option id = "74" movie = "后天" />
<option id = "75" movie = "花木兰" />
<votes id = "votesroot">
<option id = "70" movie = "建国大业" />
<option id = "71" movie = "当幸福来敲门" />
<option id = "72" movie = "风声" />
<option id = "73" movie = "2012" />
<option id = "74" movie = "后天" />
<option id = "75" movie = "花木兰" />
</votes>-----index.html<script type="text/javascript">
//读取xml的函数
function loadXMLDoc(dname) {
try {
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
catch(e) {
try {
xmlDoc=document.implementation.createDocument("","",null);
} catch(e) {alert(e.message);}
}
try {
xmlDoc.async=false;
xmlDoc.load(dname);
return(xmlDoc);
} catch(e) {alert(e.message);}
return(null);
}var xmlDoc=loadXMLDoc("votes.xml");
var root = xmlDoc.documentElement;
alert(root.InnerText);
</script>结果是 不管alert(root.innerText);还是alert(root.innerHTML);其结果都为undefined请问我该如何读取这个votes里边的东西? <option id = "70" movie = "建国大业" />
<option id = "71" movie = "当幸福来敲门" />
<option id = "72" movie = "风声" />
<option id = "73" movie = "2012" />
<option id = "74" movie = "后天" />
<option id = "75" movie = "花木兰" />
解决方案 »
- 为什么安装aptana插件后.Myeclipse总是弹出这个消息框
- 在看京东的网站,Firebug找不到JS函数定义,求指点
- 怎么获取json对象中的子对象?
- 关于框架的隐藏和显示问题
- ie中一个奇怪的问题
- ie10无法获通过iframe.contents().find("body").height()获取隐藏iframe的高度,大神怎么处理?膜拜了
- 好久没有上来问问题了,现在问一个关于vml的问题,请大虾指教
- 原题已结贴,为了感谢wsj兄弟对已结贴问题的关注,特赠200.
- 请教一个事件问题onKeypress
- 出现 windows.opener.location.reload(); 不是对象 的错误,应该怎样解决?
- 怎样将某个文本框中的空值不发送到后台
- EXT Js 的问题
function createXmlDoc(xmlText) {
if (!xmlText) return null;
try {
var xmlDom = new ActiveXObject("Microsoft.XMLDOM")
xmlDom.loadXML(xmlText)
return xmlDom
}
catch (e) {
try {
return new DOMParser().parseFromString(xmlText, "text/xml");
} catch (e) {
return null;
}
}
}//获取节点及其子节点的文本内容
function getXmlText(oNode) {
if (oNode.text) {//IE
return oNode.text;
}
var sText = "";
for (var i = 0; i < oNode.childNodes.length; i++) {
if (oNode.childNodes[i].hasChildNodes()) {
sText += getXmlText(oNode.childNodes[i]);
}
else {
sText += oNode.childNodes[i].nodeValue;
}
}
return sText; //FF
}//获取节点及其子节点的字符串标示
function getXml(oNode) {
if (oNode.xml) {
return oNode.xml; //IE
}
var oSerializer = new XMLSerializer();
return oSerializer.serializeToString(oNode); //FF
}
var xmlText = '<?xml version="1.0" encoding="utf-8"?><votes id = "votesroot"><option id = "70" movie = "建国大业" >建国大业</option><option id = "71" movie = "当幸福来敲门" /><option id = "72" movie = "风声" /><option id = "73" movie = "2012" /><option id = "74" movie = "后天" /><option id = "75" movie = "花木兰" /></votes>';var xmlDoc = createXmlDoc(xmlText);
alert(getXmlText(xmlDoc.documentElement));
alert(getXml(xmlDoc.documentElement));
//Internet Explorer 使用loadXML()方法来解析XML字符串,而其他浏览器使用 DOMParser对象
function createXmlDoc(xmlText) {
if (!xmlText) return null;
try {
var xmlDom = new ActiveXObject("Microsoft.XMLDOM")
xmlDom.loadXML(xmlText)
return xmlDom
}
catch (e) {
try {
return new DOMParser().parseFromString(xmlText, "text/xml");
} catch (e) {
return null;
}
}
}//获取节点及其子节点的文本内容
function getXmlText(oNode) {
if (oNode.text) {//IE
return oNode.text;
}
var sText = "";
for (var i = 0; i < oNode.childNodes.length; i++) {
if (oNode.childNodes[i].hasChildNodes()) {
sText += getXmlText(oNode.childNodes[i]);
}
else {
sText += oNode.childNodes[i].nodeValue;
}
}
return sText; //FF
}//获取节点及其子节点的字符串标示
function getXml(oNode) {
if (oNode.xml) {
return oNode.xml; //IE
}
var oSerializer = new XMLSerializer();
return oSerializer.serializeToString(oNode); //FF
}var xmlText = '<?xml version="1.0" encoding="utf-8"?><votes id = "votesroot"><option id = "70" movie = "建国大业" >建国大业</option><option id = "71" movie = "当幸福来敲门" /><option id = "72" movie = "风声" /><option id = "73" movie = "2012" /><option id = "74" movie = "后天" /><option id = "75" movie = "花木兰" /></votes>';var xmlDoc = createXmlDoc(xmlText);
alert(getXmlText(xmlDoc.documentElement));
alert(getXml(xmlDoc.documentElement));var nodes = xmlDoc.documentElement.getElementsByTagName("option");
for (var i = 0, len = nodes.length; i < len; i++) {
alert(nodes[i].getAttribute("movie"));
}