<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="checkedAll" runat="server" Text="全选" OnCheckedChanged="checkedAll_CheckedChanged" AutoPostBack="True" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="checkedItem" runat="server" Text= '<%# Container.DisplayIndex + 1 %>' />
</ItemTemplate>
</asp:TemplateField>
protected void checkedAll_CheckedChanged(object sender, EventArgs e)
{
bool isChecked = (gridViewXML.HeaderRow.FindControl("checkedAll") as CheckBox).Checked;
foreach (GridViewRow row in gridViewXML.Rows)
{
(row.FindControl("checkedItem") as CheckBox).Checked = isChecked;
}
}
脚本方法
<script>
function checkedAll()
{
var checkArray = window.document.forms["formAll"].item;
for(var index = 0; index< checkArray.length; ++index)
{
checkArray[index].checked = event.srcElement.checked;
}
}
</script>
<form name="formAll">
<input type="checkbox" name="all" onclick="checkedAll()" >全选</input>
<br/><br/><input type="checkbox" name="item" >1</input>
<br/><input type="checkbox" name="item" >2</input>
<br/><input type="checkbox" name="item" >3</input>