使用 ASP.NET MVC 4
和 NuGet
管理包。
通过 NuGet
升级到 jQuery 1.9.1
后,我开始收到有关删除 live() 的
函数。JavaScript
错误jQuery 1.9.x
中的
我按 F5 从 VS.NET 以 Debug模式运行,转到登录页面,并得到以下信息:
找到这个 StackOverflow 答案:https://stackoverflow.com/a/14512797并对 ~\Scripts\jquery.unobtrusive-ajax.js
进行了 4 处更改。
我的~\Scripts\jquery.unobtrusive-ajax.js
:
$(document).on("click", "a[data-ajax=true]", function (evt) {
...
});
$(document).on("click", "form[data-ajax=true] input[type=image]", function (evt) {
...
});
$(document).on("click", "form[data-ajax=true] :submit", function (evt) {
...
});
$(document).on("submit", "form[data-ajax=true]", function (evt) {
...
});
我还物理删除了 jquery.unobtrusive-ajax.min.js
并使用 WebGrease 1.3.0
从我更新的 <强>~\Scripts\jquery.unobtrusive-ajax.js
。
但是,由于某种原因,我对不使用 .live()
函数的更改没有坚持下去。我尝试停止 IIS Express 8.0 网站 (localhost:63798),VS.NET 在该网站下运行 MVC 应用程序。
还尝试执行“构建”->“清理解决方案”、“构建”->“重建解决方案”,然后按 F5 再次在 Debug模式下运行。
如果有人以前经历过这种情况并有任何见解,我将非常感激。先感谢您。
最佳答案
Microsoft jQuery Unobtrusive Ajax软件包已在版本 2.0.30116.0 中修复以修复此问题。对 .live()
的调用已更改为使用 .on()
。
尝试升级您的 NuGet 包以获取最新版本。
但是,使用 jQuery Migrate 包的建议是查找其他插件或您自己的代码中与 jQuery 1.9+ 中的更改不兼容的问题的好方法。
关于jquery - ASP.NET MVC 4 : cannot modify jQuery Unobtrusive Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15372108/