Javascript 中的 XML 解析
我正在尝试解析来自 XMLHttpRequest (对于 Firefox 扩展)的 xml。在以下代码中,req 是一个 XMLHttpRequest 对象。我在声明 req 后执行了 req.overrideMimeType("text/xml");
。
var shortURL;
var xmlDoc = document.implementation.createDocument("","",null);
xmlDoc.async = false;
xmlDoc = req.responseXml;
if (xmlDoc.readyState == 4){
shortURL = xmlDoc.documentElement.childNodes[8].text;
}
如果我使用 req.responseXml
,在 xmlDoc = req.responseXml;
之后的行会收到一条错误消息,提示“xmlDoc 未声明” 如果我使用 req.responseText
,xmlDoc.readyState == 4
变为 false。
我不怎么使用 javascript,所以请告诉我我是否在这里做错了什么。
I'm trying to parse an xml coming from an XMLHttpRequest (for a Firefox extension). In the following code, req is an XMLHttpRequest object. I did req.overrideMimeType("text/xml");
after declaring req.
var shortURL;
var xmlDoc = document.implementation.createDocument("","",null);
xmlDoc.async = false;
xmlDoc = req.responseXml;
if (xmlDoc.readyState == 4){
shortURL = xmlDoc.documentElement.childNodes[8].text;
}
If I use req.responseXml
I get an error saying "xmlDoc is not declared" for the line after xmlDoc = req.responseXml;
If I use req.responseText
, xmlDoc.readyState == 4
turns false.
I don't do much of javascript so please tell me if I'm doing something wrong here.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
需要使用 DOM 吗?如果没有,请使用 E4X。就像
如果响应包含 XML 声明 (
) 一样简单,请改用以下内容:
Do you need to use the DOM? If not, use E4X. It's as simple as
If the response includes an XML declaration (
<?xml version="...">
), use this instead:我通常更喜欢使用
responseText
,然后使用浏览器内置的 XML 解析库来解析 XML。之后,我通常将生成的 XML 文档树或子树转换为 JSON,以便在 JavaScript 中轻松访问。我在这里为此编写了一个小型实用程序库:
http://earth-api-samples.googlecode.com/svn/trunk/demos/myearth/lib/xmlutil.js
用法非常简单:
I generally prefer using
responseText
and then parsing the XML using the browser's built in XML parsing library. After that, I generally convert the resulting XML document tree, or a sub tree, to JSON for easy access in JavaScript.I wrote a tiny utility library for this here:
http://earth-api-samples.googlecode.com/svn/trunk/demos/myearth/lib/xmlutil.js
The usage is pretty simple:
Hai chanux,
希望这能帮助您了解 xml 解析器的基础知识
http://www.hiteshagrawal.com/javascript/javascript-parsing-xml-in- javascript
AJAX responseXML 错误
或尝试更改
为
或使用此函数并为您更改它。 ..
Hai chanux,
May this will help you to know basics of xml parser
http://www.hiteshagrawal.com/javascript/javascript-parsing-xml-in-javascript
AJAX responseXML errors
or try changing
to
or use this function and change it for yours...