关于复选框选中状态的判断
1.checked的选中状态
不设置checked是默认不选被选中的, 一旦设置checked="false"或者checked =
false或者checked="true"或者checked = true或者不设置任何值,都会被解释为选中。//未被选中 <input
type=“checkbox” name=“test” id=“test2”/ checked=“false”> //选中 <input
type=“checkbox” name=“test” id=“test3”/ checked=“true”> //选中 <input
type=“checkbox” name=“test” id=“test4”/ checked=false> //选中 <input
type=“checkbox” name=“test” id=“test5”/ checked=true> //选中 <input
type=“checkbox” name=“test” id=“test6”/ checked > //选中
2.取值(.val())—不能用来判断状态
//未被选中 <input
type=“checkbox” name=“test” id=“test2”/ checked> //选中console.log(KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲test1").val()) …("#test2").val())
//打印出on对checked取值,无论是选中状态或者未选中状态都是on, 所以要判断是否选中,不能使用.val()
3.取属性值(.attr)—不能用来判断状态
//未被选中 <input
type=“checkbox” name=“test” id=“test2”/ checked> //选中console.log(KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲test1").attr("c…("#test2").attr(“checked”)) //打印出undefine
对checked取值,无论是选中状态或者未选中状态都是undefine, 所以要判断是否选中,不能使用.attr(“checked”)
4.获取当前状态(.prop())—可用来判断状态
> <input type="checkbox" name="test" id="test1"/> //未被选中 <input
> type="checkbox" name="test" id="test2"/ checked> //选中
>
> console.log($("#test1").prop("checked")) //打印出false
> console.log($("#test2").prop("checked")) //打印出true
>
> 用prop取值,选中状态为true,未选中状态都是false, 所以要判断是否选中,可以使用.prop("checked")
5.$(“input[type=‘checkbox’]”).is(’:checked’)—可用来判断状态
> <input type="checkbox" name="test" id="test1"/> //未被选中 <input
> type="checkbox" name="test" id="test2"/ checked> //选中
>
> console.log($("#test1").is(":checked")) //打印出false
> console.log($("#test2").is(":checked")) //打印出true
>
> 用.is(':checked'),选中状态为true,未选中状态都是false, 所以要判断是否选中,可以使用.is(':checked')