gpt4 book ai didi

javascript - 未捕获的类型错误 : Object # has no method 'setProperty'
转载 作者:行者123 更新时间:2023-11-28 02:19:47 28 4
gpt4 key购买 nike

我在 javascript 中使用以下代码

text = LxmlHttp.responseText;
parser = new DOMParser();
xmlDoc = parser.parseFromString(text, "application/xml");
xmlDoc.setProperty('SelectionLanguage', 'XPath');

我收到此错误:Uncaught TypeError: Object #<Object> has no method 'setProperty'

请帮我解决这个问题。

TIA..

嗨菲利克斯,我有以下 xml 结构

<?xml version="1.0"?>
<response status="200">
<ns3:op xmlns="http://xxx.com/details/"
xmlns:ns2="http://xxx.com/mgmt/"
xmlns:ns3="http://xxx.com/list/">
<ns2:ntfs count="140">
<ns2:ntf>
<ns2:Nid>4687807</ns2:Nid>
</ns2:ntf>
</ns2:ntfs>
</ns3:op>
</response>

我必须在 IE 7、IE 8、IE 9、FF、safari 和 chrome 中阅读此内容

命名空间索引可能不相同并且可能会发生变化。我需要独立于命名空间和浏览器来解析 xml。

我正在尝试这样做

var xmlDoc = new DOMParser().parseFromString(....);
xmlDoc.setProperty("SelectionNamespaces", 'xmlns:ns3="http://xxx.com/list/"');
xmlDoc.setProperty("SelectionLanguage", "XPath");
var op = xmlDoc.selectSingleNode("/response/ns3:op");

这只适用于 IE。请让我知道如何在所有浏览器中解析 xml。

最佳答案

This works only in IE

是的。 setProperty是MSXML中的专有方法(实际上我根本不知道IE支持XPath)。

标准解决方案请参见MDN's article Using XPath ,青睐document.evaluate 。您应该使用功能检测来检查它是否可用,如果不可用,则返回到您的 document.selectSingleNode .

关于javascript - 未捕获的类型错误 : Object #<Object> has no method 'setProperty' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15850860/

28 4 0