如何使用vb.net使用单一复选框选中/取消选中所有复选框?

时间:2011-03-09 05:34:28

标签: asp.net vb.net webusercontrol

我的asp.net webusercontrol中有11个asp.net复选框..

我希望当checkbox1检查时,将检查所有复选框的所有复选框,如果取消选中复选框,则如果我的所有复选框都在webusercontrol panel1中,则取消选中其余复选框,如何执行此操作。

3 个答案:

答案 0 :(得分:0)

我一般建议使用jQuery(或普通的Javascript)来解决这样的问题。将常用CSS类添加到要分组/切换的复选框。

$("input[type=checkbox].yourCssClass").each(function() {   
    this.checked = !this.checked;
});

答案 1 :(得分:0)

我同意雅各布,jQuery将是最好的解决方案。这在服务器上很麻烦。

$('#mainCheckbox').click(
function(){
    $(.classforchildcheckboxes).attr('checked', $(this).attr('checked'));
    }

其他复选框只是在项目数据绑定期间添加class ='classforchildcheckboxes'。

答案 2 :(得分:0)

其他人是对的,客户端更容易。但是如果你确实需要这个,我建议把另外10个作为CheckBoxList。

然后,您可以使用AutoPostBack = True和标记全选复选框 然后在SelectAll_CheckedChanged方法循环中回合每个复选框项

Sub SelectAll_CheckedChanged(byval sender as Object, byval e as CheckBoxEventArgs)
  For each chk in myCheckBoxList
      chk.checked = SelectAll.Checked
Next


End Sub

我没有IDE来验证这种语法是否准确,但它应该让你入门