DataKeyNames="AreaID" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="AreaID" HeaderText="AreaID" ReadOnly="True"
SortExpression="AreaID" />
<asp:BoundField DataField="AreaName" HeaderText="AreaName"
SortExpression="AreaName" />
<asp:BoundField DataField="PID" HeaderText="PID" SortExpression="PID" />
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chk_Del" runat="server" />//用来判断是否要删除的行
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:Work_OAConnectionString %>"
SelectCommand="SELECT * FROM [Area]"></asp:SqlDataSource>
<asp:CheckBox ID="chk_JS" runat="server" Text="全选(JS)" οnclick="selectAll(this)"/>//通过js来进行全选
js函数的定义如下
<script type="text/javascript">
//根据传入的checkbox的选中状态设置所有checkbox的选中状态
function selectAll(obj)
{
var allInput = document.getElementsByTagName("input");
//alert(allInput.length);
var loopTime = allInput.length;
for(i = 0;i < loopTime;i++)
{
//alert(allInput[i].type);
if(allInput[i].type == "checkbox")
{
allInput[i].checked = obj.checked;
}
}
}
</script>
删除按钮相关提示
<asp:Button ID="btn_DeleteRecords" runat="server" OnClientClick="return judgeSelect();" Text="删除选中记录" />
添加JS脚本
//判断是否选中记录,用户确认删除
function judgeSelect()
{
var result = false;
var allInput = document.getElementsByTagName("input");
var loopTime = allInput.length;
for(i = 0;i < loopTime;i++)
{
if(allInput[i].checked)
{
result = true;
break;
}
}
if(!result)
{
alert("请先选则要删除的记录!");
return result;
}
result = confirm("你确认要删除选定的记录吗?");
return result;
}
第二种 方式可以通过服务器端代码实现全选
<asp:CheckBox ID="chk_Server" runat="server" OnCheckedChanged="chk_Server_CheckedChanged" Text="全选(Server)" AutoPostBack="True" />
事件代码如下
int a = this.GridView1.Rows.Count;
for (int i = 0; i < a; i++)
{
CheckBox chk = (CheckBox)this.GridView1.Rows[i].FindControl("chk_Del");
chk.Checked = this.chk_Server.Checked;
}