【发布时间】:2013-02-01 23:28:24
【问题描述】:
我正在尝试从数组项中解析 XML 字符串并遍历其项,但无法使其工作!它让我发疯,因为如果我将该字符串定义为“字符串”,它会完美运行......有什么帮助吗?我错过了什么?!
这是作为theContent[1]访问的数组字符串项的内容:
<?xml version="1.0" encoding="utf-8" ?>
<ROOT>
<ITEM>
<NAME>123</NAME>
</ITEM>
...
</ROOT>
这是读取项目的代码:
var xmlDOM = $.parseXML(theContent[1]);
var items = $(xmlDOM).find('ROOT ITEM');
$.each(items, function (key, val) {
alert($(val).find('NAME').text());
});
正如我所说,如果我将 XML 定义为字符串(如下所示)它可以工作,但是当从该数组项字符串中提取 xml 时它拒绝工作!?
var theContent = '<?xml version="1.0" encoding="utf-8" ?><ROOT><ITEM><NAME>123</NAME>/ITEM> ... </ROOT>';
@亚历山大
“数组”是从一个 txt 文件加载的,它是这样的:
Some text...|<?xml version="1.0" encoding="utf-8" ?><ROOT><ITEM><NAME>123</NAME>/ITEM> ... </ROOT>
我用 | 分割整个文本char,使用第一个数组项作为文本,然后尝试将第二个数组项解析为 XML。
正如我上面解释的那样,我无法读取子文本,但如果我调用 alert(typeOf(theContent[1]));,它会返回 String,所以在解析为 XML 之后,它应该像我在代码中构建为字符串一样工作,对吧?
【问题讨论】:
-
@Alexander:我编辑了帖子...感谢您的帮助。
标签: jquery arrays string parsexml