Как прочитать ответ json как пары имя-значение в JQuery - PullRequest
7 голосов
/ 05 октября 2010

Я хочу прочитать ответ json как пары имя и значение в моем коде JQuery. Вот мой пример ответа JSON, который я возвращаю из своего кода Java:

String jsonResponse = "{"name1":"value1", "name2:value2"};

в моем JQuery, если я напишу jsonResponse.name1, я получу значение как "value1". Вот мой код JQuery

$.ajax({
    type: 'POST',
    dataType:'json',
    url: 'http://localhost:8080/calculate',
    data: request, 
    success: function(responseData) {
        alert(responseData.name1);
    },
    error: function(XMLHttpRequest, textStatus, errorThrown) {
        //TODO  
    }
});

Здесь я хочу прочитать "name1" из jsonResponse вместо жесткого кодирования в JQuery. Что-то вроде зацикливания ответа, получающего каждое имя и значение. Есть предложения?

Ответы [ 3 ]

12 голосов
/ 05 октября 2010
success: function(responseData) {
    for (var key in responseData) {
        alert(responseData[key]);
    }
}

Важно отметить, что порядок, в котором свойства будут повторяться, является произвольным и на него не следует полагаться.

7 голосов
/ 05 октября 2010

Это так просто:

json = {"key1": "value1", "key2": "value2" };

$.each(json, function(key, value) { alert(key + "=" + value); });
5 голосов
/ 05 октября 2010

Вы можете просто использовать responseData['name1'].Легко.

...