我的网络表单中有5个复选框。
我有button1,其文字是全选....
我想当按钮1文本被选中时,然后按下按钮,然后检查所有复选框,按钮1文本将取消全部选中....如果按钮文本取消选中,则所有复选框都将被取消选中。
如何使用vb.net做到这一点?
答案 0 :(得分:3)
这样的东西应该得到它
ASPX:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="Check All" />
<asp:CheckBoxList ID="CheckBoxList1" runat="server">
<asp:ListItem Text="apple" Value="apple" />
<asp:ListItem Text="banana" Value="banana" />
<asp:ListItem Text="grapes" Value="grapes" />
<asp:ListItem Text="kiwi" Value="kiwi" />
<asp:ListItem Text="orange" Value="orange" />
</asp:CheckBoxList>
</ContentTemplate>
</asp:UpdatePanel>
VB.NET:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim toggle As Boolean = True
If Button1.Text = "Check All" Then
Button1.Text = "Uncheck All"
Else
Button1.Text = "Check All"
toggle = False
End If
For Each li As ListItem In CheckBoxList1.Items
li.Selected = toggle
Next
End Sub
或者你可以轻松地完成客户端jquery
类似
$('#Button1').click(function() {
var toggle = true;
if ($(this).val() === "Check All") {
$(this).val("Uncheck All");
} else {
$(this).val("Check All");
toggle = false;
}
$('.myCheckBoxes :checkbox').attr("checked", toggle);
});
答案 1 :(得分:0)
我建议使用jQuery。您需要在ASPX文件中使用以下内容:
<script type="text/javascript">
$(function() {
$(".select-all-button").click(function() {
var any = ($(".cb > input:checked").length > 0);
$(".cb > input").attr("checked", !any);
});
});
</script>
<asp:Button ID="SelectAllButton" Text="Select All" CssClass="select-all-button" runat="server"/><br/><br/>
<asp:CheckBox ID="CheckBox1" CssClass="cb" Text="CheckBox 1" runat="Server" /><br/>
<asp:CheckBox ID="CheckBox2" CssClass="cb" Text="CheckBox 2" runat="Server" /><br/>
<asp:CheckBox ID="CheckBox3" CssClass="cb" Text="CheckBox 3" runat="Server" /><br/>
<asp:CheckBox ID="CheckBox4" CssClass="cb" Text="CheckBox 4" runat="Server" /><br/>
<asp:CheckBox ID="CheckBox5" CssClass="cb" Text="CheckBox 5" runat="Server" /><br/>