Javascript 如何在IE8中获取XML节点的文本值?
所以我有一个XML提要,它返回一系列结果。首先,我创建了一个XML解析器 XML解析得很好。每个结果如下所示:Javascript 如何在IE8中获取XML节点的文本值?,javascript,xml,internet-explorer-8,nodes,Javascript,Xml,Internet Explorer 8,Nodes,所以我有一个XML提要,它返回一系列结果。首先,我创建了一个XML解析器 XML解析得很好。每个结果如下所示: <result> <title>some title</title> <bid>0.05123</bid> <description>some desc</description> </result> 但问题是,我尝试了所有可以想象得到的属性来获取内部文本:textcont,inne
<result>
<title>some title</title>
<bid>0.05123</bid>
<description>some desc</description>
</result>
但问题是,我尝试了所有可以想象得到的属性来获取内部文本:textcont
,innerText
,innerHTML
,nodeValue
——它们在IE8中似乎都不起作用
同样的脚本在Chrome/FF中使用.textContent
救命啊 跨浏览器向后兼容脚本:
function getXMLContent(obj,action)
{
//cross-browser get and set for xmlContent
if (obj)
{
if (action == "get") //get
{
if(obj.textContent)
{
return obj.textContent;
}
else
{
return obj.text;
}
}
else //set
{
if(obj.textContent)
{
obj.textContent = action;
}
else
{
obj.text = action;
}
}
}
else
{
throw new Error("XML-Element doesn't exist.");
}
}
在我自己检索XML的AJAX调用中,我总是使用此函数检索节点的内容。跨浏览器向后兼容的脚本:
function getXMLContent(obj,action)
{
//cross-browser get and set for xmlContent
if (obj)
{
if (action == "get") //get
{
if(obj.textContent)
{
return obj.textContent;
}
else
{
return obj.text;
}
}
else //set
{
if(obj.textContent)
{
obj.textContent = action;
}
else
{
obj.text = action;
}
}
}
else
{
throw new Error("XML-Element doesn't exist.");
}
}
在我自己检索XML的AJAX调用中,我总是使用此函数检索节点的内容。尝试
title.childNodes[0]。nodeValue
内部的另一个textNode?呸,那真是浪费了20分钟……title.text应该在IE8中完成,你考虑过使用jQuery吗?它应该提供一种跨浏览器的方式来解析该XML和$(节点)。text()
应该可以很好地获取节点的文本内容。@JLRishe很遗憾,无法将jQuery用于此项目请尝试title.childNodes[0]。nodeValue
内部的另一个textNode?呸,那真是浪费了20分钟……title.text应该在IE8中完成,你考虑过使用jQuery吗?它应该提供一种跨浏览器的方式来解析XML和$(节点)。text()
应该可以很好地获取节点的文本内容。@JLRishe很遗憾,无法将jQuery用于此项目