我有
$(document).ready(function() {
//set initial state.
$('#textbox1').val($(this).is(':checked'));
$('#checkbox1').change(function() {
$('#textbox1').val($(this).is(':checked'));
});
$('#checkbox1').click(function() {
if (!$(this).is(':checked')) {
return confirm("Are you sure?");
}
});
});Run Code Online (Sandbox Code Playgroud)
和
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" id="checkbox1"/><br />
<input type="text" id="textbox1"/>Run Code Online (Sandbox Code Playgroud)
此处更改的事件使用复选框状态更新文本框值.我使用click事件确认取消选中时的操作.如果用户选择取消,则复选标记将恢复,但更改甚至会在确认之前触发,使事物处于不一致状态(选中复选框时文本框显示为false).如何处理取消并保持文本框值与检查状态一致?