table的行和列的隐藏和显示

今天偶然发现表格隐藏行和列挺好用的,觉得还不错,下面是隐藏和显示table行、隐藏table列(显示的类同)的js函数,直接调用这些函数就可以实现表格行和列的显示和隐藏。
1.显示行
function setShowRow(oTable,iRow){
    oTable.rows[iRow].style.display = oTable.rows[iRow].style.display = "block";
}
2.隐藏行
function setHiddenRow(oTable,iRow){
    oTable.rows[iRow].style.display = oTable.rows[iRow].style.display = "none";
}

3.隐藏列
function setHiddenCol(oTable,iCol)
{
    for (i=0;i < oTable.rows.length ; i++)
    {
       oTable.rows[i].cells[iCol].style.display =        
                  oTable.rows[i].cells[iCol].style.display=="none";
//如果该列隐藏则让其显示,反之则让其隐藏
//oTable.rows[i].cells[iCol].style.display=="none"?"block":"none";
       }
}
oTable为表的id,iRow和iCol是从0开始的,iRow=0表示的是第一行,iCol=0表示的是第一列。

例如:
     <table>
        <tr>
          <td width="15%">Country</td>
          <td width="35%" height="30"><select name="type" id="type"οnchange="selectType();" style="height:20;width:150" >
            <option value="China" <c:if test="${type == 'China'}">selected</c:if>>中国</option>
           <option value="A" <c:if test="${type == 'A'}">selected</c:if>>美国</option>            
            </td>
          </tr>
       </table>


      <table id="table1" width="100%">
         <tr>
           <td width="15%">时间</td>
           <td width="35%" height="30"><s:textfield id="time" name="time"  maxlength="20"         cssStyle="width:150" /></td>         
            </tr>

           <tr>
             <td width="15%">地点</td>
             <td width="35%" height="30"><s:select id="address" name="address"                   list="addressList"  οnblur="findStorage()"  cssStyle="height:20;width:150" />
             <td width="15%">人物</td>
             <td width="35%" height="30"><s:textfield id="person" name="person"                 cssStyle="width:150" disabled="true" /></td>
           </tr>
        </table>

<script type="text/javascript">
//显示某一行
function setShowRow(oTable,iRow){
    oTable.rows[iRow].style.display = oTable.rows[iRow].style.display = "block";
}
//隐藏某一行
function setHiddenRow(oTable,iRow){
    oTable.rows[iRow].style.display = oTable.rows[iRow].style.display = "none";
}
//选择某一类型时,显示所要显示的行
function selectType(){
    var obj = $('type').value;
    var oTable = document.getElementByIdx_x('Table1');
    if(obj=='China'){
        setHiddenRow(oTable,0);//隐藏id=Table1的第1行数据
        setShowRow(oTable,1);//显示id=Table1的第2行数据
    }
  if(obj=='A'){
        setShowRow(oTable,0);//显示id=Table1的第1行数据
        setHiddenRow(oTable,1);//隐藏id=Table1的第2行数据
    }
}



 
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值