仅将第二列从XML拉入数组

时间:2015-12-09 11:49:09

标签: jquery arrays xml

我试图引入一个只包含2列但有几行的外部文件,第一个只是一个按升序排列的数字引用,应该只是跳过但第二个包含我需要输入的值一个数组,以便它们可以注入页面。到目前为止,我所能做到的只是提取所有价值。

var catalogIn = [];

$.ajax({
    url: 'content-catalog.xml',
    type: 'GET',
    dataType: 'xml',
    success: function (returnedXMLResponse) {
        $(returnedXMLResponse).find('Row').each(function () {
            // loop over each cell
            $('Data', this).each(function () {
                // push row into main array
                catalogIn.push($(this).text());
            });
        })
    }
});

2 个答案:

答案 0 :(得分:1)

首先,您需要解析像

这样的xml响应
var xmlresponse = $.parseXML(returnedXMLResponse);

然后通过循环xmlresponse找到一个节点。

var $xml = $(xmlresponse);
var $data = $xml.find("<your node>");

$data.each(function(){

    var column1= $(this).find('your column 1').text(),
     var column2= $(this).find('your column 2').text(); 
});

答案 1 :(得分:0)

为什么不检查列索引然后决定是否应该将元素添加到数组

var catalogIn = [];

$.ajax({
    url: 'content-catalog.xml',
    type: 'GET',
    dataType: 'xml',
    success: function (returnedXMLResponse) {
        $(returnedXMLResponse).find('Row').each(function () {
            // loop over each cell
            $('Data', this).each(function (index) {
                if(index == 1) {
                // push row into main array
                catalogIn.push($(this).text());
                }
            });
        })
    }
});
相关问题