Jquery 如何将 .off() 切换到 .on()
Jquery how to turn .off() to .on()
我有Jquery
单击事件,我想在执行我的函数UpdateItemStatus(this.id);
之前防止多个click
,所以我尝试了以下代码使用开/关事件,
$('#tableItems').on('click', 'tr', function (e) {
if ($(e.target).closest("td").hasClass("cssClick")) {
$(this).off(e);
UpdateItemStatus(this.id);
$(this).on(e);
}
});
但是我怎么转.on
?由于它不起作用,无法再次单击。
拥有一个决定按钮单击操作的全局变量怎么样?
像这样的东西?
var clickevent = true;
$('#tableItems').on('click', 'tr', function (e) {
if(clickevent){
if ($(e.target).closest("td").hasClass("cssClick")) {
clickevent = false;
UpdateItemStatus(this.id);
clickevent = true;
}
}
});
如果UpdateItemStatus
函数有 ajax,那么我建议你把clickevent = true
放在那个 ajax 的成功里面
你不需要对代码使用 off((。使用返回假:
$('#tableItems').on('click', 'tr', function (e) {
if ($(e.target).closest("td").hasClass("cssClick")) {
return false;
} else{
//do stuff here
}
});
我可能会使用这样的东西:
var inputstate = false;
$('#tableItems').on('click', 'tr', function (e) {
if ($(e.target).closest("td").hasClass("cssClick")) {
if(!inputstate){
inputstate = true;
setTimeout((function(element){
return function(){
UpdateItemStatus(element);
inputstate = false;
};
})(this),50);
}
}
});
setTimeout 用于"延迟调用"您的 UpdateItemStatus 函数。因为如果触发了此侦听器(不能同时触发另一个侦听器(,布尔值将更改为结束状态,然后再处理下一次单击
似乎您的UpdateItemStatus()
使用了一些异步调用(ajax?(,所以我会这样做:
$('#tableItems').on('click', 'tr', function (e) {
var $td = $(e.target).closest("td");
if ($td.hasClass("cssClick")) {
$td.toggleClass("cssClick");
UpdateItemStatus(this.id).done(function(){
$td.toggleClass("cssClick");
});
}
});
并在更新项目状态中:
function UpdateItemStatus(id){
//do stuff
return $.ajax(...);
}
相关文章:
- jquery on()和off()不起作用
- FastClick在Phonegap项目中抛出off.on('click')循环计数
- 直接在 on() 回调 Firebase 中使用 off()
- jQuery On event Off 自动解绑
- 如果不对 .off() 使用相同的 $(document) 绑定,则无法删除使用 .on() 绑定到 $(documen
- Jquery 如何将 .off() 切换到 .on()
- on() 和 off(),on() 立即触发,但我希望它像绑定或生活一样“行动”,这里有什么问题
- jQuery off on 时是用匿名函数定义的
- Jquery 网站翻译在不同链接上由 .on() .off() 事件触发
- jQuery在纯原生javascript中的“on”和“off”
- 在非dom元素上使用jquery on/off和trigger方法的陷阱是什么
- jQuery bind()取消绑定()以及on()和off()
- 如何在一个函数jQuery中使用bind、on、unbind和off
- 如何重新绑定按钮's使用.on/off单击事件
- On/Off一键定时器Javascript
- 您可以针对标记为.on()和.off()的元素子部分吗?
- 在smarty模板中使用on/off键
- AngularJS: ui开关位置(ON/OFF)识别
- On/Off:开关按钮引导程序
- 刷(ON-OFF)按钮通过复选框,html