js gridview 全选 选中了另外一张表

来源:百度知道 编辑:UC知道 时间:2024/06/23 06:36:20
<script language="javascript" type="text/javascript">
function DocheckAlls() //全选和取消全选
{
var chk=document.getElementById("form1");
var val=document.getElementById("Checkbox1");
for(var i=0;i<form1.elements.length;i++)
{
if(form1.elements[i].type=="checkbox")
{
chk.elements[i].checked=val.checked;
}
}

}
</script>

如果有多张gridview,会把其他的也选中。有没有好点的办法??
我想通过js脚本来而不是服务器端控件来实现.

var chk=document.getElementById("你的gridview的ClientID");
var val=document.getElementById("Checkbox1");
for(var i=0;i<chk.elements.length;i++)
{
if(chk.elements[i].type=="checkbox")
{
chk.elements[i].checked=val.checked;
}
}

在你需要全选的GridView的RowDataBound事件中添加如下代码
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//如果是数据行,排除是Header 和 Footer的情况
if (e.Row.RowType == DataControlRowType.DataRow)
{
//然后通过控件ID找到每一行的复选框
CheckBox ck = e.Row.FindControl("ckChoose") as CheckBox;
if (ck != null)
{
//选中复选框
ck.Checked = true;
}
}
}

-------------------------
你也可以通过添加一个全选的复选框来添加功能
行内复选框的是否选中与新增的复选框的选中相关
ck.Checked =