梁利锋 发表于 2013-2-7 16:19:45

GridView 中的 CheckBox 令其支持 FireFox

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

  在网上搜索了一下,找到了一个我认为比较好的文章,用了一段都没什么问题,不过近来发现,其中的 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.id)         {                return theCell.childNodes;         }       }}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.cells);      if(objCheckBox.checked != null)            objCheckBox.checked = obj.checked;    }}
页: [1]
查看完整版本: GridView 中的 CheckBox 令其支持 FireFox