需要注意:
因为兼容问题使用jquery的hide
hide()在IE下改变了表结构,导致获得的cellIndex不准确
改变宽度高度为0的试了,不可以
$(function(){
var isCleanList = $("[id$='isCleanList']").val();
if(isCleanList == '1'){ //查询已清理账户
}else{ // 查询未清理账户
hideColByObj($("[id$='feedbackDateLab']")[1]); //处理日期 注意顺序
hideColByObj($("[id$='undoReasonLab']")[1]); //不处理原因
hideColByObj($("[id$='feedbackResultLab']")[1]); //反馈结果
}
});
/**
* 隐藏某一列
* @param oTable 表格dom对象
* @param iCol 列号
*/
function hideColByIndex(oTable, iCol) {
for (i = 0; i < oTable.rows.length; i++) {
//用jquery的hide()效果更好
//oTable.rows[i].cells[iCol].style.display = oTable.rows[i].cells[iCol].style.display == "none" ? "block" : "none";
$(oTable.rows[i].cells[iCol]).hide(); //注意IE下调用hide方法会改变表结构,不能正确获得cellIndex,所以应该从后向前隐藏
}
}
/**
* 隐藏某一列
* @param oTable 表格dom对象
* @param colName 列名
*/
function hideColByObj(obj) {
var otd = nstc.sf.findParent(obj, "TH");
var cellIndex = otd.cellIndex;
var otable = nstc.sf.findParent(otd, "TABLE");
hideColByIndex(otable, cellIndex);
}