Gridview中添加CheckBox全选

时间:2021-07-19 10:54:54

一;aspx 页面

   GridView <Columns> 里面添加模板列代码如下:

<asp:TemplateField ItemStyle-Width="30px">

<HeaderTemplate>

<asp:CheckBox ID="CheckAll" runat="server" onclick="CheckAll(this)"/>

<asp:Label ID="Label1" runat="server" Text="全选"></asp:Label>

</HeaderTemplate>

<ItemTemplate>

<asp:CheckBox ID="CbClean" runat="server"/>

</ItemTemplate>

</asp:TemplateField>

   起作用的 js 代码

<script type="text/javascript">

function CheckAll(obj) {

var theTable = obj.parentElement.parentElement.parentElement;

var i;

var j = obj.parentElement.cellIndex;

for (i = 0; i < theTable.rows.length; i++) {

var objCheckBox = theTable.rows[i].cells[j].firstChild;

if (objCheckBox.checked != null){

objCheckBox.checked = obj.checked;

}

}

}

</script>

   CS后台代码得到选中行

protected void BtClean_Click(object sender, EventArgs e)

{

int j = 0;

for (int i = 0; i <= gvCleanList.Rows.Count - 1; i++)

{

       CheckBox cbox = (CheckBox)gvCleanList.Rows[i].FindControl("CbClean");

if (cbox.Checked == true)

{

HfCleanCarId.Value += gvCleanList.DataKeys[i].Value + "@";

j++;                

}

}

if (j < 1)

{

Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('请先选择车Ì');</script>");

}

else

{

Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('”+ HfCleanCarId.Value +”');</script>");

}

}