这个问题已经困扰我几个小时了,仍然不明白为什么它不起作用...当我使用 table.off("click");
时,它可以工作,但也会取消绑定在第一个子元素上的点击事件,该元素没有id=multi...
var table = $("table#datatable")
var button = $(".generate")
function turnOffClick() {
console.log("button clicked")
var multiButton = $("label#multi")
multiButton.off("click");
}
table.on("click", button, turnOffClick)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="datatable">
<tr>
<td>
<label class="generate">Generate</label>  
<label class="generate multi">Generate Multi</label>
</td>
</tr>
</table>
off()
函数...? - Rory McCrossantable#datatable
)。这就是为什么当您单击它时会触发事件。但是,您没有显式地向label#multi element
添加事件监听器。因此,您无法删除其中的一个。 - Guillaume Georgesmulti
,而您的代码 -var multiButton = $(“label#multi”)
- 引用带有#符号的id。要引用类,您需要:var multiButton = $(“label.multi”)
。 - James Douglas