我试图设置这个方式,如果“marketingAAA”被检查为true,隐藏的复选框“marketingPhone”也被设置为TRUE。这有效。
但是,如果页面上的任何其他复选框设置为 TRUE,则“marketingPhone”的它仍然为 TRUE。无法弄清楚这是为什么。如果“marketingAAA”未选中 TRUE,则它应保持为 FALSE。有人看到这个问题吗?
$(function() {
var marketingAAA= $("input[type='checkbox']");
var marketingPhone = $("input[type='hidden'][name='marketingPhone']");
marketingAAA.on('change', function()
{
if ($(this).val() == "TRUE") {
marketingPhone.prop('checked',true);
marketingPhone.val('TRUE');
} else {
marketingPhone.prop('checked',false);
marketingPhone.val('FALSE');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="marketingrules" name="marketingBBB" type="checkbox" class="radio-button-input" value="TRUE">
<input id="marketing" name="marketingAAA" type="checkbox" class="radio-button-input" value="TRUE">
<input type="hidden" name="marketingPhone" value=""/>
最佳答案
在您的函数中,您应该指定“marketAAA”。
var marketingAAA= $("input[type='checkbox'][name='marketingAAA']");
现在它会检查所有复选框,如果有一个复选框为真,它将检查“marketingPhone”。
$(function() {
var marketingAAA= $("input[type='checkbox'][name='marketingAAA']");
var marketingPhone = $("input[type='hidden'][name='marketingPhone']");
marketingAAA.on('change', function()
{
if ($(this).val() == "TRUE") {
marketingPhone.prop('checked',true);
marketingPhone.val('TRUE');
} else {
marketingPhone.prop('checked',false);
marketingPhone.val('FALSE');
}
});
});
关于javascript - jQuery 隐藏复选框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48340204/