我有一个复选框,点击后会打开一个对话框。如果单击“完成”,我希望复选框具有复选标记。如果单击“取消”,我希望复选框没有复选标记。
目前,我无法在使用此代码时设置复选框:
<script type="text/javascript">
$(document).ready(function() {
var dialog = $("#test-dlg").dialog({
modal:true,
autoOpen:false,
buttons: {
"Done": function() { $("#test-chk").attr("checked", "checked"); $(this).dialog("close"); },
"Cancel": function() { $("#text-chk").removeAttr("checked"); $(this).dialog("close"); }
}
});
$("#test-chk").click(function(e) {
dialog.dialog('open');
e.preventDefault();
});
});
</script>
</head>
<body>
<form action="#">
<input type="checkbox" id="test-chk" /><label for="test-chk">Testing</label>
</form>
</body>
<div id="test-dlg">
<p>Test Dialog</p>
</div>
答案 0 :(得分:2)
您正在使用jQuery 1.6,因此您需要使用.prop()
而不是.attr()
。
更改此内容:$("#test-chk").attr("checked", "checked");
:$("#test-chk").prop("checked", "checked");