现在当它第一次加载html页面时,我的复选框就是以这种方式创建的:
<input type="checkbox" id="CBOX1" name="CBOX1" onclick="onCBOX(this)" disabled/>
在同一个html中的函数中:
boolean checked = true;
document.theForm.elements['CBOX1'].checked = true;
出于某种原因,当稍后在页面上调用该函数时,不会检查复选框值。是因为当我第一次创建复选框时,我创建了它而没有经过检查&#39;属性?然后当我为它分配一个值时,该元素似乎不再包括checked属性,就像我检查页面的来源一样。它还是一样......
<input type="checkbox" id="CBOX1" name="CBOX1" onclick="onCBOX(this)" disabled/>
为了简单起见,我确信使用AJAX对此元素的其他属性进行了更改,但我不知道为什么检查的属性没有被转移...什么是替代方案?
答案 0 :(得分:6)
选中复选框:
document.theForm.elements['CBOX1'].checked = true;
document.theForm.elements['CBOX1'].checked = "checked";
取消选中复选框:
document.theForm.elements['CBOX1'].checked = false;
如果你想在加载时取消选中它,请不要触摸它,默认情况下它是未选中的。
此外,如果您在输入字段中使用已停用属性,则不会注册任何点击事件。
有关示例,请参阅此jsfiddle。
修改强>
如果可点击性不是问题,那就按照我已经指出的那样做。这是一个完整工作示例。
<html>
<head>
</head>
<body>
<input id="tar" type="checkbox" disabled />
<input type="checkbox" onclick="callFunc(this)" />
<script type="text/javascript">
function callFunc(elem){
document.getElementById("tar").checked = elem.checked;
}
</script>
</body>
</html>
答案 1 :(得分:0)
尝试将其设置为true
:
document.theForm.elements['CBOX1'].checked = true;
答案 2 :(得分:0)
试试这个,不管怎么说。
document.theForm.elements['CBOX1'].checked = true;