如何在不必调用函数的情况下获取复选框的状态。
这是针对我的表单所需的特定复杂验证。
我一直想继续听取它的状态。
我需要的东西。
checked
unchecked
我知道这有效
<input type="checkbox" onchange="showAddress3(this)" id="askAddress3">Call my friend to get the address
<script type="text/javascript">
function showAddress3() {
if ($('#askAddress3').is(":checked")) {
alert("Checkbox is checked.");
} else if ($('#askAddress3').is(":not(:checked)")) {
alert("Checkbox is unchecked.");
}
}
</script>
我想检查其状态而不调用其上的函数更改事件,如
<input type="checkbox" id="askAddress3">Call my friend to get the address
<script type="text/javascript">
if ($('#askAddress3').is(":checked")) {
alert("Checkbox is checked.");
} else if ($('#askAddress3').is(":not(:checked)")) {
alert("Checkbox is unchecked.");
}
</script>
这仅在Page加载时起作用,而在切换时不起作用。任何建议或解决方法都会非常有用。
答案 0 :(得分:2)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id="askAddress3">Call my friend to get the address
<script type="text/javascript">
$('#askAddress3').on('change', function() {
if ($('#askAddress3').is(":checked")) {
alert("Checkbox is checked.");
} else if ($('#askAddress3').is(":not(:checked)")) {
alert("Checkbox is unchecked.");
}
});
</script>
&#13;
答案 1 :(得分:1)
我认为以下是你在找什么?
要在输入代码中没有硬编码onchange=''
的情况下触发更改吗?
$("input[type='checkbox']").on("change", function() {
if ($('#askAddress3').is(":checked")) {
alert("Checkbox is checked.");
} else if ($('#askAddress3').is(":not(:checked)")) {
alert("Checkbox is unchecked.");
}
}) ;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id="askAddress3">Call my friend to get the address
&#13;