在DataGrid控件中添加CheckBox控件列,实现全选/全取消

实现方法有2种,客户端实现和服务端实现

客户端实现
(1)脚本
None.gif          < form  id ="Form1"  method ="post"  runat ="server" >
None.gif            
< asp:DataGrid  id ="dgCheckBox"  runat ="server"  AutoGenerateColumns ="False"  Width ="472px" >
None.gif                
< Columns >
None.gif                    
< asp:TemplateColumn  HeaderText ="&lt;input type=checkbox id=CheckAll οnclick='javascript:SelAll()'&gt; 全选/全取消" >
None.gif                        
< ItemTemplate >
None.gif                            
< asp:CheckBox  id ="CheckBox1"  runat ="server" ></ asp:CheckBox >
None.gif                        
</ ItemTemplate >
None.gif                    
</ asp:TemplateColumn >
None.gif                    
< asp:BoundColumn  DataField ="LastName"  HeaderText ="LastName" ></ asp:BoundColumn >
None.gif                    
< asp:BoundColumn  DataField ="FirstName"  HeaderText ="FirstName" ></ asp:BoundColumn >
None.gif                
</ Columns >
None.gif            
</ asp:DataGrid >
None.gif        
</ form >
(2)JavaScript
None.gif < script language = " javascript " >
None.gif        
function  SelAll()
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            
var RowCnt=<%=RowCount%>;
InBlock.gif            
var IsChk;
InBlock.gif            IsChk 
= document.all.CheckAll.checked;
InBlock.gif            
for(j= 0;j<RowCnt+1;j ++ )
ExpandedSubBlockStart.gifContractedSubBlock.gif            
dot.gif{
InBlock.gif                
if(typeof(document.all.dgCheckBox.rows(j).cells(0).children(0)) == "object")
ExpandedSubBlockStart.gifContractedSubBlock.gif                
dot.gif{
InBlock.gif                    document.all.dgCheckBox.rows(j).cells(
0).children(0).checked = IsChk;
InBlock.gif            
ExpandedSubBlockEnd.gif                }

ExpandedSubBlockEnd.gif            }

InBlock.gif
ExpandedBlockEnd.gif        }

None.gif        
</ script >
(3)代码
None.gif // 定义公共变量,保存数据的行数
None.gif
public   int  RowCount;
None.gif        
private   void  Page_Load( object  sender, System.EventArgs e)
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            
//页面初试化时进行数据绑定
InBlock.gif
            if(!IsPostBack)
InBlock.gif                DataGridDataBind();
ExpandedBlockEnd.gif        }

None.gif
// 绑定数据
None.gif
private   void  DataGridDataBind()
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gifDataSet ds 
= new DataSet();
ExpandedSubBlockStart.gifContractedSubBlock.gif
/**//*
InBlock.gif添充数据
ExpandedSubBlockEnd.gif
*/

InBlock.gifRowCount 
= ds.Tables[0].Rows.Count;
ExpandedBlockEnd.gif}

服务端实现
这个方法就是出发事件回到服务端,捉行查看

转载于:https://www.cnblogs.com/timsoft/articles/414611.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值