我的 asp.net webusercontrol 中有 11 个 asp.net 复选框。
我希望当复选框1被选中时,所有复选框的其余部分都将被选中,如果复选框未被选中,那么所有复选框的其余部分将被取消选中如果我的所有复选框都在webusercontrol panel1中,该怎么做。
我的 asp.net webusercontrol 中有 11 个 asp.net 复选框。
我希望当复选框1被选中时,所有复选框的其余部分都将被选中,如果复选框未被选中,那么所有复选框的其余部分将被取消选中如果我的所有复选框都在webusercontrol panel1中,该怎么做。
我同意 Jacob 的观点,jQuery 将是最好的解决方案。在服务器上这样做很麻烦。
$('#mainCheckbox').click(
function(){
$(.classforchildcheckboxes).attr('checked', $(this).attr('checked'));
}
)
其他复选框只是在项目数据绑定期间添加 class='classforchildcheckboxes'。
我通常建议使用 jQuery(或纯 Javascript)来解决这样的问题。向要分组/切换的复选框添加一个通用 CSS 类。
$("input[type=checkbox].yourCssClass").each(function() {
this.checked = !this.checked;
});
其他人是对的,客户端更容易。但如果你确实需要这个,我建议将其他 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 来验证此语法是否准确,但它应该可以帮助您入门