我不确定现有代码是否存在错误,或者Jquery Array中的功能如下所示:
var categories = [];
$(this).children('categories').each(function() {
categories.push($(this).find('name').text());
});
现在我有以下XML节点:
<categories>
<name>a</name>
<name>b</name>
<name>c</name>
</categories>
我在Firebug中看到,categories数组有一个元素 - “abc”但实际上它应该是索引2,其值为'a','b'和'c'
我的代码中有什么问题吗?
答案 0 :(得分:6)
$(this).children('categories').each(function() {
$(this).find('name').each(function(){
categories.push($(this).text());
});
});
答案 1 :(得分:3)
var categories = [];
$(this).find('categories name').each(function() {
categories.push($(this).text());
});
您循环遍历每个categories
元素(只有一个),并获取其中名为name
的所有元素的文本。只有一次text
调用只意味着一个值。您需要遍历name
而不是categories
元素。