关于jquery.unobtrusive-ajax.js 回调函数无效 的解决办法
今天新项目的时候写MVC的时候使用到了Ajax.BeginForm,发现它的回调函数怎么都不响应,最后在网上查找了相关资料跟自己写的一些代码测试,
总算找到了原因:jquery.unobtrusive-ajax.js内部会使用到jquery的live()方法,而引入高版本的jquery已经移除了live()的方法。
解决方式有2个
①:引入支持live()方法的jquery版本
②: 查找jquery.unobtrusive-ajax.js中的live关键字 (有4个) 将live关键字替换成on 使用高版本jquery的on()方法。
并将脚本语言放到文档底部运行即可(注意一定要在文档底部运行!!!)。
如果不想在文档底部运行JS,则需要修改jquery.unobtrusive-ajax.js内部刚刚替换的on方法绑定方式
例: 替换完后live之后 on方法为
$("form[data-ajax=true]").on("submit", function (evt) {
var clickInfo = $(this).data(data_click) || [];
evt.preventDefault();
if (!validate(this)) {
return;
}
asyncRequest(this, {
url: this.action,
type: this.method || "GET",
data: clickInfo.concat($(this).serializeArray())
});
});
需要更改为:
$(document).on("submit", "form[data-ajax=true]",function (evt) {
var clickInfo = $(this).data(data_click) || [];
evt.preventDefault();
if (!validate(this)) {
return;
}
asyncRequest(this, {
url: this.action,
type: this.method || "GET",
data: clickInfo.concat($(this).serializeArray())
});
});
以上就是问题以及解决方案,如有不对的地方,欢迎评论指正。
最新文章
- 关于LockSupport
- local认证
- 2015GitWebRTC编译实录
- 为ProgressBar进度条设置颜色1
- MFC消息映射机制
- 改进我们的小游戏 - 零基础入门学习Python004
- hdu4717 The Moving Points(二分做法)
- 款待奶牛(treat)
- vue.js2.0 自定义组件初体验
- listviewMyAdapter
- awk -f program.file 功能使用
- centos7下tomcat8.5安装部署与优化
- python之路--MySQl单表查询
- HDU 5279 YJC plays Minecraft(NTT+分治)
- JavaSE学习总结(六)——接口、抽象类、内部类
- 我的vim(持续更新)
- 帮助大家理解java中的随机和继承,动态绑定.
- 《图解Http》 10,11章:构建Web的技术, Web的攻击技术
- Android实现带图标的ListView
- PHP的一些语句 if...else...elseif - Switch - while - for
热门文章
- 通过数据库客户端界面工具DBeaver连接Hive
- pip安装报错: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy
- 这一次搞懂Spring代理创建及AOP链式调用过程
- flex弹性布局及其属性
- position中的四种属性
- 1.二进制部署kubernetes
- Oracle调用Java方法(上)如何使用LoadJava命令和如何将简单的Jar包封装成Oracle方法
- weui上传多图片,前端压缩,base64编码
- 2、尚硅谷_SSM高级整合_创建Maven项目.avi
- 小师妹学JVM之:JIT中的PrintCompilation