Search code examples
extjsextjs3

how to copy the json response into an array in extjs?


I have a json response coming in from a php file, the json response looks as below results:

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

Now I want to copy this data into an array in the following way 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.

Please note: I need to do this is extjs3.


Solution

  • If I am getting you correctly you are getting the JSON as a string from an ajax call to your PHP handler in a string format and you want to cast it into a Javascript array of coloumn objects.

    you can do it like this:

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

    this will allow you to iterate over the result set as an in memory javascript array of objects like this:

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

    I hope I got you right...