首页 > 开发 > 综合 > 正文

全选DataGrid里的复选框

2024-07-21 02:15:48
字体:
来源:转载
供稿:网友

我们经常会在datagrid里选择一组数据,然后批量操作,如果要全部操作的话需要一个全选的功能,如果你用这个全选按钮的服务器端事件来让datagrid里复选框的全选的话,会多一次向服务器的回传,我们可以写一个js函数来简化这一步骤.
其实datagrid在客户端会生成一个html表格,表格的id属性就是datagrid的id,这个id可以用clientid获取,然后你的全选按钮也可以在后台编码里添加一个onclick属性来让他执行你写好的js代码,比如你声明了一个datagrid1的datagrid,然后里面在一个模板列里放了一个复选框,然后又在外面声明了一个checkbox1来全选datagrid1里面的复选框,语法如下.
checkbox1.attributes.add("onclick","chk(this,'"+dg1.clientid+"')");
下面是我用html代码做了个演示.
<html>
<head>
<title></title>
<meta name="generator" content="editplus">
<meta name="author" content="蛙蛙王子">
<meta name="keywords" content="">
<script language="javascript">
<!--
function chk(chk,id){
 var oevent = document.all(id);
 var chks = oevent.getelementsbytagname("input");
 for(var i=0; i<chks.length; i++)
    {
      if(chks[i].type=="checkbox")
  chks[i].checked=chk.checked;
    }
}
//-->
</script>
</head>
<body>
<input id="checkbox1" type="checkbox" name="checkbox1" language="javascript" />
<table id="datagrid1">
<tr>
 <td><input type="checkbox" name="chk1"></td>
 <td><input type="checkbox" name="chk2"></td>
 <td><input type="checkbox" name="chk3"></td>
</tr>
<tr>
 <td><input type="checkbox" name="chk4"></td>
 <td><input type="checkbox" name="chk5"></td>
 <td><input type="checkbox" name="chk6"></td>
</tr>
<tr>
 <td><input type="checkbox" name="chk7"></td>
 <td><input type="checkbox" name="chk8"></td>
 <td><input type="checkbox" name="chk9"></td>
</tr>
</table>
</body>
</html>
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表