gpt4 book ai didi

jquery - 为什么jquery的on()只工作一次?

转载 作者:行者123 更新时间:2023-12-01 04:54:19 26 4
gpt4 key购买 nike

我有一个简单的脚本,只能运行一次。如果我单击表行内的任意位置,我的脚本将选中一个复选框。但是,如果我在行内单击第二次、第三次等,那么它就不再起作用了。为什么?我现在使用jquery 1.9.1。之前,当我使用 jquery 1.8 和 live() 而不是 on() 时,我的脚本可以正常工作。

HTML:

<tr class="row">
<td><input type="checkbox"></td>
</tr>

jquery:

$(document).ready(function(){
$("body").on("click",".row",function(){
var loc = $(this).find('input');
var ischecked = loc.attr("checked");
if(ischecked) {
loc.attr("checked", false);
} else {
loc.attr("checked", true);
}
});
});

最佳答案

您需要将 attr 替换为 prop,如下所示

$(document).ready(function(){
$("body").on("click",".row",function(){
var loc = $(this).find('input');
var ischecked = loc.attr("checked");
if(ischecked) {
loc.prop("checked", false);
} else {
loc.prop("checked", true);
}
});
});

jsfiddler

关于jquery - 为什么jquery的on()只工作一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15802250/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com