如何从两个不同的函数绑定和解除绑定点击事件?

时间:2018-03-08 13:24:09

标签: jquery bind unbind

我有两个点击功能,功能是在列表中添加休假,另一个功能是从列表中删除休假。 当我在列表中添加休假时,我不想再次点击该特定按钮.vacation-btn。如果我从列表中删除了specificik vacation,那么我希望能够再次点击.vacation-btn。 我尝试过使用jQuery(this).off('点击');它的工作,但是当我从列表中删除休假时,我想再次添加点击事件。

jQuery("tr td .list").live('click', function(e) {
    var test = jQuery(this).closest('tr');
    jQuery(test).remove();
});
jQuery(".vacation-btn").on('click', function(event) {
    var id = jQuery(this).attr('id');
    event.stopImmediatePropagation();
});

1 个答案:

答案 0 :(得分:0)

可能的方法:

<script>
function f1() {
  console.log("btn1");
  $("#btn1").off("click");
  $("#btn2").on('click', f2);
}
function f2() {
  console.log("btn2");
  $("#btn2").off("click");
  $("#btn1").on('click', f1);
}
$(document).ready(function() {
  $("#btn1").on('click', f1);
});
</script>
<button id="btn1">button 1</button>
<button id="btn2">button 2</button>

另一种方法是检查内容,添加\删除,或者只是添加一个bool指示符。