javascript - 如何循环 JSON

标签 javascript jquery json

我像这样通过ajax获取JSON

{
    "questionTypes": [
        {
            "id": 1,
            "name": "text",
            "deleted": false,
            "version": 0
        },
        {
            "id": 2,
            "name": "rating",
            "deleted": false,
            "version": 0
        },
        {
            "id": 3,
            "name": "boolean",
            "deleted": false,
            "version": 0
        },
        {
            "id": 4,
            "name": "option",
            "deleted": false,
            "version": 0
        }
    ],
    "data": [
        {
            "id": 1,
            "category": "default",
            "question": "Staff Courtesy",
            "deleted": false,
            "version": 0
        },
        {
            "id": 2,
            "category": "default",
            "question": "Staff Response",
            "deleted": false,
            "version": 0
        },
        {
            "id": 3,
            "category": "default",
            "question": "Check In",
            "deleted": false,
            "version": 0
        },
        {
            "id": 4,
            "category": "default",
            "question": "Check Out",
            "deleted": false,
            "version": 0
        },
        {
            "id": 5,
            "category": "default",
            "question": "Travel Desk",
            "deleted": false,
            "version": 0
        },
        {
            "id": 6,
            "category": "default",
            "question": "Door Man",
            "deleted": false,
            "version": 0
        },
        {
            "id": 14,
            "category": "client",
            "question": "test question",
            "deleted": false,
            "version": 0
        },
        {
            "id": 15,
            "category": "client",
            "question": "test1",
            "deleted": false,
            "version": 0
        },
        {
            "id": 16,
            "category": "client",
            "question": "test2",
            "deleted": false,
            "version": 0
        },
        {
            "id": 17,
            "category": "client",
            "question": "test2",
            "deleted": false,
            "version": 0
        },
        {
            "id": 21,
            "category": "client",
            "question": "ggggg",
            "deleted": false,
            "version": 0
        }
    ]
}

我想从

获取名称字段
"questionTypes": [
    {
        "id": 1,
        "name": "text",
        "deleted": false,
        "version": 0
    },
    {
        "id": 2,
        "name": "rating",
        "deleted": false,
        "version": 0
    },
    {
        "id": 3,
        "name": "boolean",
        "deleted": false,
        "version": 0
    },
    {
        "id": 4,
        "name": "option",
        "deleted": false,
        "version": 0
    }
],

$.each(data1.data.questionTypes, function(index, currPat) {

                   console.log(currPat.name); }

但它不起作用,我在控制台中未定义。任何人都可以告诉我如何精确循环

最佳答案

Demo Fiddle

jQuery

$.each(json.data, function (index, currPat) {
    $(tbody).append('<tr><td><b>Question from data: ' + currPat.question + '</b></td><td><b>Names from questionTypes</b><select class="qType"></select></td></tr>');
});

var select = $('.qType');
$(json.questionTypes).each(function (index, currPat) {
    $(select).append('<option>' + currPat.name + '</option>');
});  

您必须循环两次:一次用于获取问题然后用于获取名称

关于javascript - 如何循环 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23867700/

相关文章:

php - 使用 load() 刷新 div 后,Facebook 之类的按钮不显示;

javascript - 如何用实际日期填充数组并用-1填充所有剩余日期

c++ - 如何将elasticsearch的数据保存为json格式?

javascript - 我无法进入嵌套 JSON 对象,但只是有时

javascript - Ember.js:重新加载通过有效负载中的 "links"给出的 .hasMany 关系

javascript - 表达式中的 AngularJS 表达式

jquery - 我的幻灯片在主机上不起作用

javascript - PHP 和 jQuery 中的 Ajax 调用

javascript - 模态下方的面板或模态

javascript - 使用对象属性作为 "delimiter"的对象数组 block