如何使用jQuery读取和签署XML数据(不同大小的数组)?
AJAX从XML读取行节点并存储在javascript数组中,XML数组大小不是常数。
我的代码:
$(document).ready(function(){
$.ajax({
type: "GET",
url: "sites.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('msg').each(function() {
var title = $(this).find('title').text();
i = 0;
tic = new Array();
$(this).find('desc').each(function() {
tic.push($(this).find('line').text());
alert(tic[i]);
i++;
});
});
}
});
});
和XML文件(演示)
<msgs>
<msg>
<title>ABC</title>
<desc>
<line>test 1</line>
<line>test 2</line>
<line>test 2</line>
</desc>
<time>5</time>
</msg>
</msgs>
请有人帮帮我
答案 0 :(得分:0)
将所有line
元素读入数组更改
tic.push($(this).find('line').text());
到
$(this).find('line').each(function() {
tic.push($(this).text());
})
这将处理每个line
元素并将其添加到您的数组中,然后将数组初始化放在顶部var tic = [];
...所以完整的成功函数将如下所示:
var tic = [];
$(xml).find('msg').each(function() {
var title = $(this).find('title').text();
$(this).find('line').each(function() {
tic.push($(this).text());
});
});