Разница в $ .getJSON между Firefox и Internet Explorer - PullRequest
0 голосов
/ 30 июля 2011

Потратил некоторое время на поиск этого и не нашел ничего, что имело бы непосредственное отношение.Я решил проблему, но удивляюсь, почему это так.Может быть, кто-то может ответить на это.Возможно, эта информация поможет кому-то еще.

Мой javascript был таким:

var userServicePath = serverPath + '/Login/RegisterUserDetails/' + userId;
$.getJSON(userServicePath, null, createAndPopulateHiddenFields);

Мой контроллер выполнил запрос, заполнил объект и возвратил объект через:

return Json(qry, JsonRequestBehavior.AllowGet);

Это работало нормально, пока я не добавил еще несколько полей.После изменения объекта и контроллера мой ответ в IE показал нулевой для моих новых полей.Точка останова на возвращаемом значении в контроллере проверила, что новые значения попадают в объект правильно.Даже Firebug показал значения.

Просто к вашему сведению, моя маршрутизация в MVC настроена со значением id для третьего значения в URL.У любого есть идеи, почему это будет работать в FF, но не в IE.

И для исправления ... Я удалил userId из строки userServicePath и добавил его в качестве параметра в коде getJSON.

var userServicePath = serverPath + '/Login/RegisterUserDetails';
$.getJSON(userServicePath, { id: userId }, createAndPopulateHiddenFields);

Если у кого-то есть ответ, это было бы здорово.В противном случае, надеюсь, кто-то еще в моих шкурах сможет тратить меньше времени на поиск ответа и двигаться дальше.

1 Ответ

0 голосов
/ 24 октября 2011

Отвечая на мой вопрос здесь:

var userServicePath = serverPath + '/Login/RegisterUserDetails';
$.getJSON(userServicePath, { id: userId }, createAndPopulateHiddenFields);
...