在我的 mvc 4 Web 应用程序中,我收到以下错误“未捕获的类型错误:未定义不是函数 jquery.unobtrusive-ajax.js:115”
在这条线上我们有
$("a[data-ajax=true]").live("click", function (evt) {
evt.preventDefault();
asyncRequest(this, {
url: this.href,
type: "GET",
data: []
});
});
我发现很多人都遇到同样的错误并阅读了帖子。几乎所有的人都建议重新排序 jquery 和其他脚本,我已经尝试了很长时间,但似乎没有什么可以消除这个错误。
目前,我在 head 部分按以下顺序放置了 css 和脚本。任何人都可以发现任何问题吗?谢谢
<link href="/Content/main/css/bootstrap.css" rel="stylesheet"/>
<link href="/Content/UiDatePicker.css" rel="stylesheet"/>
<link href="/Content/Site.css" rel="stylesheet"/>
<script src="/Scripts/modernizr-2.5.3.js"></script>
<script src="/Scripts/jquery-1.9.1.js"></script>
<script src="/Scripts/jquery-ui.js"></script>
<script src="/Scripts/bootstrap.js"></script>
<script src="/Scripts/respond.js"></script>
<script src="/Content/main/js/General.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
最佳答案
.live()
在 jQuery 1.7 中已弃用,并在 jQuery 1.9 中被删除。您可以使用.on()相反:
$("a[data-ajax=true]").on("click", function (evt) {
或者,如果元素是动态添加的:
$(document).on('click', "a[data-ajax=true]", function (evt) {
注意:尽管可以在 unobtrusive-ajax.js 中解决所有这些问题,但最好下载已解决所有这些问题的更新版本(如果该版本存在) ,当然)。
关于jquery - 未捕获的类型错误 : undefined is not a function jquery. unobtrusive-ajax.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26650410/