Как скопировать ответ JSON в массив в Extjs? - PullRequest
0 голосов
/ 13 декабря 2011

У меня есть ответ json, поступающий из php-файла, ответ json выглядит следующим образом:

[
    {
        "header": "Client ID",
        "dataindex": "clientID"
    },
    {
        "header": "Client Name",
        "dataindex": "clientName"
    },
    {
        "header": "Progress Bar",
        "dataindex": "progressBar"
    }
]

Теперь я хочу скопировать эти данные в массив следующим образом: var allColumns = [];

//loop through the json response
var singleColumn = [];
singleColumn['header'] = Client ID from the json response whose key is header
singleColumn[dataindex'] = clientID from the json response whose key is header.

Обратите внимание: мне нужно сделать это extjs3.

1 Ответ

1 голос
/ 13 декабря 2011

Если я вас правильно понимаю, вы получаете JSON в виде строки из вызова ajax вашего обработчика PHP в строковом формате и хотите преобразовать его в массив Javascript объектов столбца.

вы можете сделать это так:

var allColumns = Ext.decode(YOUR PHP JSON FORMATTED RESULT);

это позволит вам перебирать результирующий набор в виде массива javascript объектов в памяти, как этот:

for(var i=0 ; i < allColumns.length; i++){
    allColumns[i].header ...
    allColumns[i].dataindex ...
}

Надеюсь, я вас правильно понял ...

...