这是我的问题:
在这里摆弄:
https://www.bootply.com/jMryRDRZNT
当用户单击复选框时,我需要显示一条警告消息。
然后显示一个模式对话框,用户可以单击“我理解”和“取消”
单击“取消”按钮后,我要取消选中该复选框。
我尝试这样做:
$('#btnModalCancel').click(function() {
$('chkImm').attr('checked', false);
});
尝试也'prop'而不是attr-仍然无法正常工作。似乎在显示对话框之后,某些东西阻止了复选框的更改。
我将console.log('test')放在函数中-它被调用,但是复选框并未被选中...请参见上面链接中的小提琴。
最佳答案
您选择的chkImm
错误,请使用#chkImm
对于jQuery 1.6+:
不推荐使用.attr()属性;使用新的.prop()函数代替:
$('#myCheckbox').prop('checked', true); // Checks it
$('#myCheckbox').prop('checked', false); // Unchecks it
对于jQuery
要选中/取消选中复选框,请使用属性
checked
并进行更改。使用jQuery,您可以执行以下操作:$('#myCheckbox').attr('checked', true); // Checks it
$('#myCheckbox').attr('checked', false); // Unchecks it
参考:https://stackoverflow.com/a/17420580/1715121
$('#chkImm').on('change', function() {
if ($(this).is(':checked')) {
$("#myModal").modal({
backdrop: 'static',
eyboard: false
});
}
});
$('#btnModalCancel').click(function() {
$('#chkImm').attr('checked', false);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<div class="container">
<form class="form">
<input id="chkImm" type="checkbox"><label>Turn on</label>
</form>
</div>
<div id="myModal" class="modal">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Предупреждение, вы уверены!</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<p>Блаблабла</p>
</div>
<div class="modal-footer">
<button type="button" id="btnModalAgree" class="btn btn-warning">Я уверен, и хочу продолжить</button>
<button type="button" id="btnModalCancel" class="btn btn-secondary" data-dismiss="modal">Отмена</button>
</div>
</div>
</div>
</div>
关于javascript - 单击模式对话框按钮后,如何取消选中复选框?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48357919/