我有一个脚本可以检查所有具有相同类的复选框。
但是,我已经设置了取消检查所有无法正常工作的条件。
这是我的代码
function check_all() {
if ($('#all_check').prop("checked")) {
$('.chk').prop("checked", "true");
} else {
$('.chk').prop("checked", "false");
}
}
$('.chk').prop("checked", "false");
行有一些问题,但我找不到。
只有代码的这一部分无效。
答案 0 :(得分:4)
只需移除true
和false
周围的引号即可。它们是数据类型而不是字符串。
function check_all() {
if ($('#all_check').prop("checked")) {
$('.chk').prop("checked", true);
} else {
$('.chk').prop("checked", false);
}
}
答案 1 :(得分:2)
我在代码中看到的唯一问题是true
和false
的双引号
function check_all() {
if ($('#all_check').prop("checked")) {
$('.chk').prop("checked", true);
} else {
$('.chk').prop("checked", false);
}
}
您也可以简化如下,
function check_all() {
$('.chk').prop("checked", $('#all_check').prop("checked"));
}
因为$('#all_check').prop("checked")
会返回true
或false
。因此,它将设置为具有类checked
.chk
属性
答案 2 :(得分:1)
这样做
function check_all() {
$('.chk').prop("checked", $('#all_check').is(":checked"));
}
答案 3 :(得分:1)
最短路:
function check_all() {
$('.chk').prop( "checked", $('#all_check').is(":checked") );
}
答案 4 :(得分:0)
你不需要""
。传递布尔
$('.chk').prop("checked", true);
$('.chk').prop("checked", false);
答案 5 :(得分:0)
True
和False
应该是一个布尔值。您在prop
函数中分配字符串值。
$('.chk').prop("checked", true);
$('.chk').prop("checked", false);
答案 6 :(得分:0)
只需使用jQuery中的.attr()
函数
function checkall() {
$('.chk').attr('checked', $('#all_check').is(':checked'));
}