$.getJSON Firefox 和 Internet Explorer 之间的区别

发布于 2024-11-27 10:20:38 字数 858 浏览 0 评论 0原文

花了一段时间搜索这个并没有发现任何直接相关的东西。我已经解决了这个问题,但不知道为什么会这样。也许有人可以回答这个问题。也许这个信息会帮助其他人。

我的 javascript 是这样的:

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

我的控制器运行一个查询,填充一个对象并通过以下方式返回该对象:

return Json(qry, JsonRequestBehavior.AllowGet);

这工作正常,直到我添加了更多字段。修改对象和控制器后,我在 IE 中的响应显示新字段为空。控制器中返回值上的断点验证了新值是否正确进入对象。甚至 Firebug 也显示了这些值。

仅供参考,我在 MVC 中的路由是使用 url 中第三个值的 id 值设置的。任何人都知道为什么这在 FF 中有效,但在 IE 中无效。

为了解决这个问题,...我从 userServicePath 字符串中删除了 userId 并将其添加为 getJSON 代码中的参数。

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

如果有人有答案,那就太好了。否则,希望像我这样的人可以花更少的时间寻找答案并继续前进。

Spent a while searching on this and found nothing that related directly. I have resolved the issue, but wonder why it is so. Maybe someone can answer this. Maybe this info will help someone else.

My javascript was as such:

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

My Controller ran a query, populated an object and returned the object via:

return Json(qry, JsonRequestBehavior.AllowGet);

This worked fine until I added a few more fields. After modifying the object and controller, my response in IE showed null for my new fields. The breakpoint on the return value in the controller verified the new values were getting into the object properly. Even Firebug showed the values.

Just an FYI, my routing in MVC is set up with an id value for the third value in the url. Anyone have any ideas why this would work in FF, but not in IE.

And for the fix,... I removed the userId from the userServicePath string and added it as a parameter in the getJSON code.

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

If anyone has an answer, that would be great. Otherwise, hopefully someone else in my shoes can spend less time searching for an answer and move on.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

关于从前 2024-12-04 10:20:38

在这里回答我自己的问题:

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

Answering my own question here:

var userServicePath = serverPath + '/Login/RegisterUserDetails';
$.getJSON(userServicePath, { id: userId }, createAndPopulateHiddenFields);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文