Ajax局部更新导致JS事件重复触发问题的解决方法
如果在页面中包含一个ajax更新的列表,那么需要小心非动态更新部分的事件处理。
以带有公共工具栏的列表界面为例:
| Menu1 | Menu2
----------------------------------------------------------------------------
ID TITLE DESCRIPTION OPERATION
1 test1 hey test X - ...
2 test2 why not X - ...
----------------------------------------------------------------------------
$.ajax(
....
data: { ...
},
success: function(data) {
$('Menu1').click(
function(){
//do something
}
);
}
)
由于Menu1界面部分是公共的,并不会随着列表数据的更新而被重新载入,那么上面的代码将产生重复的click事件触发(在多次更新列表后)。
所以我们要注意,在ajax列表更新的结果处理中,不能包含工具栏事件侦听的重新初始化。
时间: 2014-10-13
在使用AJAX(jQuery)异步请求数据时,为了避免因某些原因用户同时多次点击按钮,提交重复的请求,我们需要禁用请求提交按钮. 重点:jQuery的 attr 和 removeAttr 两个函数,主要是元素button的disabled属性. Demo: 复制代码 代码如下:
Button disabeld Butt1.引入css与js bootstrapValidator.min.css bootstrapValidator.min.js 2.html中的modal代码
非常不多说,直接给大家上干货,写的不好还请见谅. 具体代码如下所示:
Indjavascript/js的ajax的GET请求代码如下所示:
刚学习了ssm框架,ajax校验成功,分享下 1.导入jar包 2.配置spring-servlet.xml