全选/全不选总结

1.grideview的后台全选/全不选方法

 1  public void SelectAllNot(Object sender, EventArgs e)
 2         {
 3             CheckBox SelectAll =  
 4           (CheckBox)GridView1.HeaderRow.FindControl("Checkbox_Header");
 5 
 6             if (SelectAll.Checked == true)
 7             {
 8                 foreach (GridViewRow CheckBoxItem in GridView1.Rows)
 9                     ((CheckBox)CheckBoxItem.FindControl("Checkbox_OP")).
10                 Checked = true;
11             }
12             else
13             {
14                 foreach (GridViewRow CheckBoxItem in GridView1.Rows)
15                      ((CheckBox)CheckBoxItem.FindControl("Checkbox_OP")).
16                 Checked= false;
17             }
18         }    
View Code

   逐个选取时,可以使用foreach循环

1             bool IsChecked = false;
2             foreach (GridViewRow CheckBoxItem in GridView1.Rows)
3             {
4                 IsChecked =     ((CheckBox)CheckBoxItem.FindControl("Checkbox_OP")).Checked;
5                 if (IsChecked)
6                 {
7 
8                  }
9               }
View Code

  前台一般都是固定样式,比较常见

1  <asp:TemplateField HeaderText="checkboxselectall" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" HeaderStyle-CssClass="FixedTitleColumn" ItemStyle-CssClass="FixedDataColumn" >
2         <HeaderTemplate>
3              <asp:CheckBox id="Checkbox_Header" runat="server" BorderWidth="0px" BorderColor=White AutoPostBack="true" OnCheckedChanged="SelectAllNot">//SelectAllNot对应后台方法
4 </asp:CheckBox>
5         </HeaderTemplate>
6     <ItemTemplate>
7        <asp:CheckBox id="Checkbox_OP" runat="server"   BorderWidth="0px"></asp:CheckBox>
8        </ItemTemplate>
9          </asp:TemplateField>
View Code

其中grideview表头ID等属性一般在<asp:TemplateField></asp:TemplateField>中,而datagrideview。。 <asp:TemplateColumn> </asp:TemplateColumn>.

全选也可以使用js实现,例如:

 1  //js实现全选/全不选
 2             function SelectAllCheckboxes(spanChk) {
 3                 elm = document.forms[0];
 4                 for (i = 0; i < elm.length; i++) {
 5                     if (elm[i].type == "checkbox" && elm[i].id !=         spanChk.id) 
 6                               {
 7                         if (elm.elements[i].checked != spanChk.checked)
 8                             elm.elements[i].click();
 9                     }
10                 }
11             }
View Code

在CheckBox中只需要在表头调用onclick方法就可以实现:οnclick="SelectAllCheckboxes(this)"

 datagrid全选:

 1         //全选操作
 2         protected void Checkbox_Header_CheckedChanged(object sender, EventArgs e)
 3         {
 4             bool SelectAll = false;
 5             SelectAll = ((CheckBox)((Table)Datagrid1.Controls[0]).Rows[0].FindControl("Checkbox_Header")).Checked;
 6 
 7             if (SelectAll == true)
 8             {
 9                 foreach (DataGridItem CheckBoxItem in this.Datagrid1.Items)
10                 {
11                     ((CheckBox)CheckBoxItem.FindControl("Checkbox_OP")).Checked = true;
12                 }
13             }
14             else
15             {
16                 foreach (DataGridItem CheckBoxItem in this.Datagrid1.Items)
17                 {
18                     ((CheckBox)CheckBoxItem.FindControl("Checkbox_OP")).Checked = false;
19                 }
20             }
21         }
View Code

 

转载于:https://www.cnblogs.com/lzlbk/p/6396198.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在uniapp中,可以使用checkbox组件来实现全选功能。你可以在checkbox组件上绑定一个变量,通过修改这个变量的值来控制checkbox的选中状态。例如,你可以使用v-model指令将checkbox的选中状态与一个变量进行双向绑定。当这个变量的值改变时,checkbox的选中状态也会相应改变。\[1\] 在实现全选功能时,你可以使用checkbox组件的checked属性来控制checkbox的选中状态。你可以将所有的checkbox组件的checked属性绑定到一个变量,然后通过修改这个变量的值来实现全选功能。当全选checkbox被点击时,你可以通过监听tap事件来改变这个变量的值,从而改变所有checkbox的选中状态。\[2\] 然而,有时候你可能会遇到一个问题,就是无法触发checkbox-group的change事件。这可能是因为动态修改checkbox的checked属性时,无法触发change事件。这意味着你无法依赖checkbox-group来管理已选项。\[3\] 总结起来,你可以使用checkbox组件和checkbox-group组件来实现全选功能,但在动态修改checkbox的选中状态时可能无法触发change事件。你可以通过监听tap事件来改变checkbox的选中状态,从而实现全选功能。 #### 引用[.reference_title] - *1* *2* [uniapp实现checkbox全选](https://blog.csdn.net/lplovewjm/article/details/130106016)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [uniapp 多选框的全选功能实现](https://blog.csdn.net/lsjweiyi/article/details/124218892)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值