У меня есть следующий JSON, возвращаемый в переменную с именем data.
ЭТО ИСКУССТВО, КОТОРАЯ ВОЗВРАЩАЕТСЯ...
[
{"Id": 10004, "PageName": "club"},
{"Id": 10040, "PageName": "qaz"},
{"Id": 10059, "PageName": "jjjjjjj"}
]
и я пытаюсь выполнить цикл через коллекцию с помощью $.each, но я столкнулся с проблемами, в которых отображается предупреждение undefined. Я пробовал много разных синтаксисов, но не могу понять этого.
JQuery, который я использую,
$.each(data, function(i, item) {
alert(item.PageName);
});
Может ли кто-нибудь указать мне в правильном направлении?
ИЗМЕНИТЬ Это код, который я использую для захвата данных.
$.getJSON('/Cms/GetPages/123', null, function(data) {
fillSelect(data);
});
и это функция, вызываемая при обратном вызове
function fillSelect(data) {
alert(data);
$.each(data, function(i, item) {
alert(item.PageName);
});
}
РЕДАКТИРОВАТЬ 2 Это немного сбивает меня с толку, согласно документам, он должен работать так, как я, но это не так. По словам скрипача, заголовок показывает: -
Content-Type: application/json; charset=utf-8
и JSON точно верна выше. Я использую хром, если это делает что-то другое. Будет проверяться в IE и FF....
РЕДАКТИРОВАТЬ 3
с использованием $.get производит
"[\r\n {\r\n \"Id\": 10041,\r\n \"PageName\": \"01234567890\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 2\r\n },\r\n {\r\n \"Id\": 10001,\r\n \"PageName\": \"about\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 1\r\n },\r\n {\r\n \"Id\": 10056,\r\n \"PageName\": \"fdgdfgdfg\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 1\r\n },\r\n {\r\n \"Id\": 10052,\r\n \"PageName\": \"hjkhjk\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 2\r\n },\r\n {\r\n \"Id\": 10059,\r\n \"PageName\": \"jjjjjjj\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 1\r\n },\r\n {\r\n \"Id\": 10057,\r\n \"PageName\": \"qqqqq\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 2\r\n },\r\n {\r\n \"Id\": 10054,\r\n \"PageName\": \"qwqw\",\r\n \"MetaId\": 1000,\r\n \"TemplateId\": 2\r\n }\r\n]"