如何从javascript多维数组中检索值

时间:2016-10-07 18:37:15

标签: javascript jquery ajax cordova

我无法从通过调用php webservice的ajax返回给我的javascript对象中检索值。我确认返回的JSON是正确的,如下所示:

{
    "json": [{
        "campeonato": {
            "id_campeonato": "630",
            "nome_campeonato": "Copa do Mundo\r",
            "nome_pais": "África\r"
        }
    }, {
        "campeonato": {
            "id_campeonato": "11",
            "nome_campeonato": "Série A\r",
            "nome_pais": "Brasil\r"
        }
    }]
}

我正在尝试使用 response.json[i].value 来获取对象,但每当我尝试提醒时,我都会收到消息 undefined 。 这是我用于ajax调用的函数:

webservice.js

function listaCampeonatos(){
    $.ajax({
        url: 'http://localhost/projetos/centraljogos/webservice/listagem.php',
        type: 'GET',
        dataType: 'json',
        data: {type:'listaCampeonatos'},
        ContentType: 'application/json',
        success: function(response){
            //alert('Listagem bem sucedida!');
            //$('#resultado').html(JSON.stringify(response));

            //console.log(response);

            alert(JSON.stringify(response));

            for (i=0 ; i<response.json.length ; i++){
                //alert('Entrou no for / Pos. array: '+i);
                console.log(response.json[i].nome_campeonato);
                alert(response.json[i].nome_campeonato);
            }
        },
        error: function(err){
            alert('Ocorreu um erro ao se comunicar com o servidor! Por favor, entre em contato com o administrador ou tente novamente mais tarde.');
            console.log(err);
        }
    });
}

那么,我做错了什么?提前做出来的!

1 个答案:

答案 0 :(得分:1)

试试这个:

For i = ThisWorksheet.Cells.SpecialCells(xlCellTypeLastCell).Row to 2 step -1
    ' that row do you mean the duplicate or the original (I am using original)
    If ThisWorksheet.Cells(i, 5) = ThisWorksheet.Cells(i-1, 5) and _        
       ThisWorksheet.Cells(i-1, 12) = "Program" and ThisWorksheet.Cells(i, 12) <> "Lathe"
       ThisWorksheet.Rows(i-1).EntireRow.Delete
    End If
Next i

for (i=0 ; i<response.json.length ; i++){ //alert('Entrou no for / Pos. array: '+i); console.log(response.json[i].campeonato.nome_campeonato); alert(response.json[i].campeonato.nome_campeonato); } 就是这个对象:

json[i]

因此,在访问{ "campeonato": { "id_campeonato": "630", "nome_campeonato": "Copa do Mundo\r", "nome_pais": "África\r" } } 之类的属性之前,您必须访问campeonato属性...

工作片段:

id_capeonato