一.JavaScript 实现全选
<script language="Javascript">
//代码说明(lulu163.com):form1为表单名,memberId为复选框,selectbutton为全选按钮
function selectAll()
{
for (var i=0;i<document.form1.memberId.length;i++) {
var temp=document.form1.memberId[i];
temp.checked=!temp.checked;
}
if (document.form1.selectButton.value=="全部选择")
{
document.form1.selectButton.value="取消全选";
}
else
{
document.form1.selectButton.value="全部选择";
}
}
</script>
二.asp.net 的GridView 后台显示全选和取消
前台页面,GridView中的一个列
<asp:TemplateField>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chbItem" ToolTip='<%# DataBinder.Eval(Container,"DataItem.日志ID") %>'
runat="server" />
</ItemTemplate>
<HeaderTemplate>
<asp:CheckBox ID="chbAll" runat="server" AutoPostBack="true" OnCheckedChanged="chbAll_CheckedChanged" />
</HeaderTemplate>
</asp:TemplateField>
protected void chbAll_CheckedChanged(object sender, EventArgs e)//全选
{
if (((CheckBox)sender).Checked)
{
foreach (GridViewRow row in GridView1.Rows)//GridView1.Rows中的Rows只计当前页(分页情况下)的行数,如果是数据的所用行,用Items.Count();
{
((CheckBox)row.Cells[0].FindControl("chbItem")).Checked = true;
}
}
else//清空当前页面所有行选中状态
{
foreach(GridViewRow row in GridView1.Rows)
{
((CheckBox)row.Cells[0].FindControl("chbItem")).Checked = false;
}
}
//批量删除
SetUp.OperateDataBase odb = new SetUp.OperateDataBase();
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox del = (CheckBox)GridView1.Rows[i].FindControl("chbItem");
if (del.Checked)
{
string strSql = "delete from 日志表 where 日志ID=" + del.ToolTip;
odb.delete(strSql, true);
}
}}