症状
取不到会导致很多DataTable无法全选,无法获取选中的项
原因
某些IE6下tr.ownerDocument返回的不是其所属的document而是null,这样yui的getTrEl函数也返回了null,最终导致getRecord返回null
解决方法
不使用DataTable的getRecord方法,而自己实现其内部语句,跳过其getTrEl方法,直接调用如下
record = dataTable._oRecordSet.getRecord(dataTable.getRecordIndex(htmlE.sectionRowIndex));
其中dataTable即为DataTable,htmlE就是trEl。
附加说明:
如果你得不到trEl,只能得到里面的某个子元素比如tdEl等,可以使用如下方法得到trEl
elRow = Dom.getAncestorByTagName(elRow,"tr");
其中elRow就是你的tdEl,而Dom是YAHOO的Dom。
补充:
getNextTrEl也有同样问题,替换方法为
htmlE=dataTable._elTbody.rows[htmlE.sectionRowIndex+1];
现在出了2.8和3.0,不知道是否解决了这个问题。