gpt4 book ai didi

javascript - 具有来自 responseXML 的命名空间的跨浏览器 'getElementsByTagName'

转载 作者:数据小太阳 更新时间:2023-10-29 01:52:05 25 4
gpt4 key购买 nike

我正在尝试使用 getElementsByTagName 读取 XML 响应:

var rows = items.responseXML.getElementsByTagName("z:row");

for (var i=0; i<rows.length; i++)
{
//do something
}

上面的代码在 Firefox 和 IE 中运行良好,但在 chrome 中它抛出 null.. 我的意思是它没有获取任何数据.. 当我 alert rows.length它总是在 chrome 中给我 0

然后我在 google 中搜索并了解到问题出在 xsd:element 上,然后我将 "z:row" 更改为仅 "row"。然后它在 Chrome 中工作,但 Firefox 和 IE 为 rows.length 返回 0

有没有跨所有浏览器的方法?

最佳答案

这是我用的:

function byTagNS(xml,tag,ns) {
return xml.getElementsByTagNameNS
? xml.getElementsByTagNameNS(ns,tag)
: xml.getElementsByTagName(ns+":"+tag);
}

在你的情况下:

byTagNS(responseXML, "row", "z")

关于javascript - 具有来自 responseXML 的命名空间的跨浏览器 'getElementsByTagName',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17486882/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com