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]