我将以下 XML 作为字符串:
<battery_content>
<last_update>2012-15-09-22-40</last_update>
<total_downloads>234</total_downloads>
......
</battery_content>
我从 Ajax 请求中获取 XML,并将其存储在 sXMLData
中。我快速执行了一次 window.alert(sXMLData)
,一切正常。
当我在 IE8 中运行下一段代码时,它似乎无法运行。 Chrome 和 Firefox 都可以。
window.alert("last_update" + $(sXMLData).find("last_update").text());
我似乎无法弄清楚为什么。这个方法不适用于IE8吗?如果是这样,我该如何解决这个问题?
最佳答案
处理“XML as a dumb string”的正确方法是通过 $.parseXML
传递它第一:
window.alert(
"last_update" + $($.parseXML(sXMLData)).find("last_update").text());
但是,您不需要手动执行此操作
- 或者服务器返回一个 XML
Content-Type
, - 或您获取 XML 的 AJAX 请求使用
dataType
AJAX 选项指定应将响应视为 XML
如果服务器在您的控制之下,请修复它以返回正确的内容类型。如果不是,请使用替代解决方案。我建议仅当您从第三方代码中获取您有充分理由不想接触的字符串时才手动解析 XML。
关于javascript - 查询。 text() 似乎在 IE8 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13434352/