如果我将复选框“ A”和复选框“ B”从TRUE更改为FALSE,我想将复选框“ C”设置为FALSE。
这是我的示例代码,不知道要添加什么以继续。
如果复选框“ A”或“ B”为TRUE,我仍然希望复选框“ C”保持为TRUE。
谢谢!
$(".loyalty").change(function () {
if ($(".loyalty").is(':checked')) {
$(".email_optin_status").prop('checked', true);
}
else {
$(".email_optin_status").prop('checked', false);
}
});
$(".newsletters").change(function () {
if ($(".newsletters").is(':checked')) {
$(".email_optin_status").prop('checked', true);
}
else {
$(".email_optin_status").prop('checked', false);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="loyalty" name="A"> A
<hr>
<input type="checkbox" class="newsletters" name="B"> B
<hr>
<input type="checkbox" class="email_optin_status" name="C"> C
答案 0 :(得分:0)
$(".loyalty").change(function () {
if ($(".loyalty").is(':checked')) {
$(".email_optin_status").prop('checked', true);
}
else if ($(".newsletters").is(':checked')) {
$(".email_optin_status").prop('checked', true);
} else
{
$(".email_optin_status").prop('checked', false);
}
});
$(".newsletters").change(function () {
if ($(".newsletters").is(':checked')) {
$(".email_optin_status").prop('checked', true);
}
else if(($(".loyalty").is(':checked'))){
$(".email_optin_status").prop('checked', true);
}
else{
$(".email_optin_status").prop('checked', false);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="loyalty" name="A"> A
<hr>
<input type="checkbox" class="newsletters" name="B"> B
<hr>
<input type="checkbox" class="email_optin_status" name="C"> C
答案 1 :(得分:0)
逻辑很简单:
C.checked = A.checked || B.checked;
例如
function updateCBs(evt) {
document.querySelector('[name="C"]').checked =
document.querySelector('[name="A"]').checked ||
document.querySelector('[name="B"]').checked;
}
// Add listeners onload
document.addEventListener('DOMContentLoaded', function(){
var cbs = [
document.querySelector('[name="A"]'),
document.querySelector('[name="B"]')
];
cbs.forEach(cb => cb.addEventListener('click', updateCBs, false));
// Update checkboxes
updateCBs();
}, false);
<input type="checkbox" name="A"> A<hr>
<input type="checkbox" name="B"> B<hr>
<input type="checkbox" name="C"> C
侦听器可以是一行,但这是一个很长的声明。