仅在启用复选框A时启用复选框B,反之亦然

时间:2009-12-21 09:04:17

标签: javascript jsp dom jsp-tags

我有两列带有可预测名称的复选框。如果未选中列a中的复选框,如何在第B列中禁用复选框,并且仅在启用复选框a的第一个时启用它?

 <dmf:checkbox 
 name="someNameAColumnNumber"
 value="true" 
 onclick = "enableColumnBCheckBox" runatclient="true" 
 />

是否有类似于checkvalue = true的设置等效复选框B为真,反之亦然?

编辑复选框不在表单中..它们位于嵌套表中。
EDIT2 应该仅适用于IE6(我知道....),而不是寻找跨浏览器的兼容性

2 个答案:

答案 0 :(得分:0)

你目前使用的是任何javascript框架吗?如果没有,我推荐jQuery。这可以在纯javascript中完成,并且很容易得到几乎整个浏览器的支持,但对于真正的crossbrowser支持,我绝对建议使用现有的框架。假设jQuery:

$('#checkboxA').click(function() {
    $('#checkboxB')[0].disabled = !this.checked;
});

答案 1 :(得分:0)

找出一种可以作为onclick事件的方式。

function toggleCheckBoxB(source) {

           var cbAID= source.id;

            var cbBID;
            cbBID= cbAID.replace("A", "B");


            if ( source.checked == 1 ) 
            {
                document.getElementById(cbBID).disabled = false;
            }
            else 
            {
                document.getElementById(cbBID).disabled = true;
                document.getElementById(cbBID).checked = 0;
            }

         }