javascript - 无法获取属性值 'nodeValue' : object is null or undefined in IE

标签 javascript xml

<script>
  if (window.XMLHttpRequest)
   {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
   }
  else
   {// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
   }
  xmlhttp.open("GET","Default.xml",false);
  xmlhttp.send();
  xmlDoc=xmlhttp.responseXML; 

 var management=xmlDoc.getElementsByTagName("Management");

document.write("<tr><td>");
document.write(management[i].getElementsByTagName("RepresentativeName")[0].childNodes[0].nodeValue);
document.write("</td></tr>");

</script>

我正在其他浏览器中使用它,但 xml 元素中没有任何值。但 ie 向我抛出错误并且不渲染 UI

最佳答案

在将其写入文档之前,您需要添加 if 条件。

尝试这样的代码

<script>
  if (window.XMLHttpRequest)
   {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
   }
  else
   {// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
   }
  xmlhttp.open("GET","Default.xml",false);
  xmlhttp.send();
  xmlDoc=xmlhttp.responseXML; 

 var management=xmlDoc.getElementsByTagName("Management");

document.write("<tr><td>");
if(management[i].getElementsByTagName("RepresentativeName")[0].childNodes[0]){
  document.write(management[i].getElementsByTagName("RepresentativeName")[0].childNodes[0].nodeValue);
}else{
  document.write('');
}
document.write("</td></tr>");

</script>

关于javascript - 无法获取属性值 'nodeValue' : object is null or undefined in IE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31404212/

相关文章:

xml - 是否可以将根元素限制为从指定父类型派生的类型?

javascript - 在浏览器中存储 token

javascript - 查找所有 block 元素

javascript - 如何一键打开多个外部网址而不被浏览器弹出窗口拦截器拦截?

php - laravel 如何将关系转移到数组

android - 状态按钮选择器android

java - 无法计算 XPath 中的表达式

c++ - Poco::DOMParser 和 wstring

javascript - 如何检测位置哈希的变化?

javascript - 在 jQuery 数据表中使用 AngularJS 观察器的方法是什么