GridView 中的 CheckBox 令其支持 FireFox

  GridView 中好像也有一个 CheckBoxField,不过不知道怎么用,或者,它是只读的,所以不能告诉我们用户的选择,反正,这个问题需要自己解决。

  在网上搜索了一下,找到了一个我认为比较好的[url=http://eddie005.cnblogs.com/archive/2006/07/04/GridView_CheckBox.html]文章[/url],用了一段都没什么问题,不过近来发现,其中的 JavaScript 部分,不支持 FireFox。

  查了一些资料,发现主要问题是 FireFox 不支持 parentElement,继续修改,发现其 firstChild 在 IE 和 FF 中是不同的,于是添加一个 get_CheckBox 的函数,终于在 IE 和 FF 都可以正常运行了。

  下面是修改后的 JavaScript:

function get_CheckBox(theCell)
{
for(var i = 0; i < theCell.childNodes.length; i++)
{
if(theCell.childNodes[i].id)
{
return theCell.childNodes[i];
}
}
}

function select_all(obj)
{
var theTable = obj.parentNode.parentNode.parentNode;
var j = obj.parentNode.cellIndex;

for(var i=0; i<theTable.rows.length; i++)
{
var objCheckBox = get_CheckBox(theTable.rows[i].cells[j]);
if(objCheckBox.checked != null)
objCheckBox.checked = obj.checked;
}
}
阅读更多

没有更多推荐了,返回首页