jQuery,JSON数组推送

时间:2016-11-28 22:57:32

标签: jquery json each

我在做这项工作时遇到了一些问题:

这是我通过ajax拉出的json数组:

{
    "message": [{
        "title": "Account",
        "id": 1
    }, {
        "title": "Content",
        "id": 2
    }, {
        "title": "Other",
        "id": 3
    }]
}

这里是javascript:

var items = [];
$.get("settings.php", {
        getlink: 1,
    }, function(json) {
        $.each(json.message, function() {
            items.push(this);
        });

},"json");

console.log(items)

但由于某种原因,items数组总是为空[] 我可以在firebug中看到,json返回阵列,但我无法推动它。

2 个答案:

答案 0 :(得分:3)

使用 $.each 返回的index, value

$.each(json.message, function(index, value) {
    items.push(value);
});

注意: $.each() .each() 不同。

希望这有帮助。

答案 1 :(得分:2)

您需要将params传递给$.each函数并将该对象推送到您的数组。



var json = {
    "message": [{
        "title": "Account",
        "id": 1
    }, {
        "title": "Content",
        "id": 2
    }, {
        "title": "Other",
        "id": 3
    }]
}

var items = [];
$.each(json.message, function(index, item) {
  items.push(item);
});

console.log(items)

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;