我有一個簡單的腳本,只能使用一次。如果我單擊表格行內的任意位置,我的腳本將檢查一個複選框。但是,如果我在行內點擊第二,第三等時間,那麼它不再工作。爲什麼?我現在正在使用jQuery 1.9.1。我的腳本以前工作時,我使用jQuery 1.8與live()
而不是on()
。爲什麼jquery的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);
}
});
});
我想你應該使用'loc.prop(「checked」)',而不是'.attr()'。 – Barmar 2013-04-04 04:00:57
將「checked」attr設置爲true或false與選中或未選中的複選框無關。只要屬性在那裏,它就會被檢查。 – Antony 2013-04-04 04:01:36
您應該添加和刪除該屬性,而不是將其設置爲true或orfalse。 – box86rowh 2013-04-04 04:02:25