在asp.net中 用js获取gridciew中 checkbox所选中的值

在.net中 有一个母页面 和一个弹出窗体 弹出窗体中有一个GridView,其中的模板列中我放了个<input id="chk_TakeID" type="checkbox" onclick="" >
我想请你帮我写一段JS代码 来获取选中的值 第一列是ID 第二列是Name 这两个值我都要拿到
ID可以放在list中,这个我要作为一个查询条件来查询数据库,而name 要赋值给母页面的相应的textBox框。这个checkbox要求是多选的。
谢谢!

var datalist = document.getElementById("gridview1");
var id = "";
var name = "";
for(var i=1;i<datalist.rows.length-1;i++)
{
if(datalist.rows[i].cells[2].children[0].checked==true)//模板列checkbox是否被选中(checkbox在第三列,cells的值为2),因为是模板列,有控件,因此应取这一列的children[0](第1个控件)
{
id += datalist.rows[i].cells[0].innerHTML+",";//获取id值(若你的ID在第一列时,cells的值为0)
name += datalist.rows[i].cells[1].innerHTML+",";//获取name值(若你的NAME在第二列时,cells的值为1)以逗号相隔
}
}
name就是所有选中的NAME集合,你可以用split(',')对它进行拆分,然后再赋值到textbox中
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-18
直接给这个input绑定自定义客户端属性就行了,比如加上
<input id="chk_TakeID" type="checkbox" myid='<%#Eval("id")%>'
然后设定onclick调用js方法的时候传本体过去: onclick="javasctipr:select(this);"

在方法直接用this.myid就能取到id得值了,name也一样。 剩下的就很简单,直接用js操作相应的textbox或者checkbox就行了。
相似回答