在DataGrid页眉上添加全选的CheckBox控件
2006-10-13 17:40
393 查看
很简单的方法,就是用js实现:
页面:
<asp:datagrid id="dgUserList" runat="server" Width="640px" BorderColor="White" PagerStyle-HorizontalAlign="Right"
AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False">
<AlternatingItemStyle BackColor="#F5F5F5"></AlternatingItemStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<HeaderStyle HorizontalAlign="Center" ForeColor="White" BackColor="#4A95FD" Height="8"></HeaderStyle>
<PagerStyle HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
<Columns>
<asp:TemplateColumn>
<HeaderTemplate>
<asp:CheckBox id="chkAll" runat="server"></asp:CheckBox>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox id="chkItem" runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="id" HeaderText="序号"></asp:BoundColumn>
<asp:BoundColumn DataField="username" HeaderText="用户名"></asp:BoundColumn>
<asp:BoundColumn DataField="workno" HeaderText="工号"></asp:BoundColumn>
<asp:BoundColumn DataField="dept" HeaderText="部门"></asp:BoundColumn>
</Columns>
<PagerStyle Visible="False" HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
</asp:datagrid>
后台代码:
private void dgUserList_PreRender(object sender, System.EventArgs e)
{
foreach (DataGridItem item in dgUserList.Controls[0].Controls)
{
if (item.ItemType == ListItemType.Header)
{
CheckBox chkAll=(CheckBox)item.FindControl("chkAll");
System.Text.StringBuilder strScript = new System.Text.StringBuilder("<script language='javascript'> /n");
strScript.Append(" function checkStatus() { /n");
strScript.Append(" var bAll = true; /n");
strScript.Append(" bAll = document.all('" + chkAll.ClientID + "').checked; /n");
for(int i=0; i<dgUserList.Items.Count ; i++)
{
strScript.Append(" document.all('" + dgUserList.Items[i].Cells[0].FindControl("chkItem").ClientID + "').checked = bAll; /n");
}
strScript.Append(" } /n");
strScript.Append("</script> /n");
if(!Page.IsClientScriptBlockRegistered("checkStatus"))
Page.RegisterClientScriptBlock("checkStatus",strScript.ToString());
chkAll.Attributes.Add("onclick","checkStatus()");
return;
}
}
相关文章推荐
- 在DataGrid页眉上添加全选的CheckBox控件
- 在DataGrid页眉上添加全选的CheckBox控件
- 在DataGrid页眉上添加全选的CheckBox控件
- 在DataGrid页眉上添加全选的CheckBox控件
- 在DataGrid页眉上添加全选的CheckBox控件
- 给DataGrid加CheckBox列并在表头添加全选、全选按钮、置零按钮
- 为DataGrid添加CheckBox控件
- C# GridView列头添加CheckBox控件实现全选功
- 给DataGrid中前添加CheckBox,全选和全不选问题,经典解决方案.
- 为DataGrid添加CheckBox控件
- JavaScript实现DataGrid中添加CheckBox列(全选与否)
- .NET漫游指南-004-在dataGrid中添加CheckBox支持单选,多选,全选功能
- asp:DataGrid之添加asp:CheckBox做全选功能时涉及到绑值问题解决
- JavaScript实现DataGrid中添加CheckBox列(全选与否)
- JavaScript实现DataGrid中添加CheckBox列(全选与否)
- 为DataGrid添加CheckBox控件
- GridView控件中添加CheckBox控件,并且实现选择、全选和反选
- [ASP.NET]在DataGrid列页眉中添加全选CheckBox
- 为DataGrid添加CheckBox控件
- Android高级控件(一)——ListView绑定CheckBox实现全选,添加和删除等功能