客户端实现
(1)脚本
<
form
id
="Form1"
method
="post"
runat
="server"
>
< asp:DataGrid id ="dgCheckBox" runat ="server" AutoGenerateColumns ="False" Width ="472px" >
< Columns >
< asp:TemplateColumn HeaderText ="<input type=checkbox id=CheckAll οnclick='javascript:SelAll()'> 全选/全取消" >
< ItemTemplate >
< asp:CheckBox id ="CheckBox1" runat ="server" ></ asp:CheckBox >
</ ItemTemplate >
</ asp:TemplateColumn >
< asp:BoundColumn DataField ="LastName" HeaderText ="LastName" ></ asp:BoundColumn >
< asp:BoundColumn DataField ="FirstName" HeaderText ="FirstName" ></ asp:BoundColumn >
</ Columns >
</ asp:DataGrid >
</ form >
(2)JavaScript
< asp:DataGrid id ="dgCheckBox" runat ="server" AutoGenerateColumns ="False" Width ="472px" >
< Columns >
< asp:TemplateColumn HeaderText ="<input type=checkbox id=CheckAll οnclick='javascript:SelAll()'> 全选/全取消" >
< ItemTemplate >
< asp:CheckBox id ="CheckBox1" runat ="server" ></ asp:CheckBox >
</ ItemTemplate >
</ asp:TemplateColumn >
< asp:BoundColumn DataField ="LastName" HeaderText ="LastName" ></ asp:BoundColumn >
< asp:BoundColumn DataField ="FirstName" HeaderText ="FirstName" ></ asp:BoundColumn >
</ Columns >
</ asp:DataGrid >
</ form >
<
script language
=
"
javascript
"
>
function SelAll()
{
var RowCnt=<%=RowCount%>;
var IsChk;
IsChk = document.all.CheckAll.checked;
for(j= 0;j<RowCnt+1;j ++ )
{
if(typeof(document.all.dgCheckBox.rows(j).cells(0).children(0)) == "object")
{
document.all.dgCheckBox.rows(j).cells(0).children(0).checked = IsChk;
}
}
}
</ script >
(3)代码
function SelAll()
{
var RowCnt=<%=RowCount%>;
var IsChk;
IsChk = document.all.CheckAll.checked;
for(j= 0;j<RowCnt+1;j ++ )
{
if(typeof(document.all.dgCheckBox.rows(j).cells(0).children(0)) == "object")
{
document.all.dgCheckBox.rows(j).cells(0).children(0).checked = IsChk;
}
}
}
</ script >
//
定义公共变量,保存数据的行数
public int RowCount;
private void Page_Load( object sender, System.EventArgs e)
{
//页面初试化时进行数据绑定
if(!IsPostBack)
DataGridDataBind();
}
// 绑定数据
private void DataGridDataBind()
{
DataSet ds = new DataSet();
/**//*
添充数据
*/
RowCount = ds.Tables[0].Rows.Count;
}
public int RowCount;
private void Page_Load( object sender, System.EventArgs e)
{
//页面初试化时进行数据绑定
if(!IsPostBack)
DataGridDataBind();
}
// 绑定数据
private void DataGridDataBind()
{
DataSet ds = new DataSet();
/**//*
添充数据
*/
RowCount = ds.Tables[0].Rows.Count;
}
服务端实现
这个方法就是出发事件回到服务端,捉行查看