从JSON数组获取第一项的问题

时间:2015-01-04 18:37:46

标签: javascript jquery arrays json

$('#data').change(function () {
    $.ajax({
        url:        'richiesta.php',
        type:       'POST',
        dataType:   'json',
        data: {
            value: this.value
        },
    }).done(function (data) {
        $('#textfield').val(JSON.stringify(data));
        $('#results').val('Descrizione codice: ' + data[0].descrizione_codice);
    });
});

richiesta.php只是一个触发某些函数来获取JSON的文件。 <{1}}使用原始JSON正确填充,因此一切正常。

我无法弄清楚如何输出#textfield中名称descrizione_codice所标识的JSON的第一项。

JSON是有效的,这是选择一个选项(截断)的示例:

#results

我做错了就是Firebug告诉我的数据(0).descrizione_codice&#34;数据不是函数&#34; ..

我没有使用{ "data":[ { "codice_comparto":"PRO", "descrizione_codice":"Competenze fisse per il personale a tempo indeterminato", "codice_siope":"1101", "descrizione_ente":"", "ricerca":false, "idtable":"000717409-1101", "cod_ente":"000717409", "anno":"2014", "periodo":"12", "codice_gestionale":"1101", "imp_uscite_att":"756", "importo_2013":"37718576", "importo_2014":"32810124", "importo_2015":null } ], "cosa":false } ,因为jQuery already parses $.parseJSON正确归功于数据类型。

我建立了一个测试页 here 。您可以从下拉菜单中选择JSON响应选择一个选项。

2 个答案:

答案 0 :(得分:4)

根据您的JSON结构,您应该能够以data.data

的形式访问数组
.done(function (data) {
    console.log(data.data[0].descrizione_codice);
});

答案 1 :(得分:1)

    $('#results').val('Descrizione codice: ' + data.data[0].descrizione_codice);
  1. 首先数据是您实际的 js变量
  2. 第二个数据是JSON 中的数组,名为&#34; data&#34;我们在哪里访问第一个元素的名为&#34; descrizione_codice&#34;
  3. 的属性

    希望它澄清