我有一个分为Kendo UI Panel Bar的表单。在第一个面板中,我有一个字段,当填充任何文本时,检查当前不可见的复选框,并位于其下方的折叠面板中。
我的问题是复选框没有检查。我已经阅读了一些关于如何在不可见时禁用复选框的帖子。有解决方法吗?
function Validate(uid) {
if ($("#SomeNumber_" + uid).val().length > 0)
{
$("#MyCheckBox").attr('checked', true); //This checkbox is display:none at the time this is set
//Also tried these, but they didn't work:
//$("#MyCheckBox").click();
//var myCheckBox= document.getElementById("MyCheckBox");
//myCheckBox.checked = true;
}
}
答案 0 :(得分:2)
尝试$("#MyCheckBox").prop('checked', true);
我有一个类似的用例,可以证明可以检查一个隐藏的复选框。
我认为使用attr的正确方法是
$("#MyCheckBox").attr('checked', 'checked');
答案 1 :(得分:2)
只需通过按钮动态更改复选框,即可测试复选框上的显示无。它适用于display none set。
http://jsfiddle.net/jmsessink/hcWf8/1/
以下内容将您的复选框的attr设置为“已选中” -
这个 -
$('#MyCheckBox').attr('checked', true)
以及
$('#MyCheckBox').attr('checked', 'checked')
以及
document.getElementById('MyCheckBox').checked = true;
以及
document.getElementById('MyCheckBox').checked = 'checked';
*编辑 - 更新了jsfiddle版本以显示这四种方法