input 也可以hidden的
好像只有select不能,要不你就先判断看td中是什么。
如果不是select就直接hidden,否则要获取该元素再hidden

解决方案 »

  1.   

    <script>
    function s(){
        document.all.t.style.display="none";
      }
    </script>
     <td>
    <select name="t">
    <option>xxx</option>
    </select>
    <input type=button onclick=s() value="hidden">
    </td>
      

  2.   

    这个可能是用 COL 的一个BUG吧, 用另外一种方法来实现:
    <script>
    function s(e)
    {
      var index = e.cellIndex;
      var table = e.parentElement.parentElement.parentElement;
      for(var i=0; i<table.rows.length; i++)
      {
        table.rows[i].cells[index].style.display = "none";
      }
    }
    </script>
    <table border width=300>
    <colgroup>
      <col id=a>
      <col id=b>
      <col id=c>
    </colgroup>
    <tbody>
    <tr>
        <td onclick="s(this)">1</td>
        <td onclick="s(this)">2</td>
        <td onclick="s(this)">3</td>
    </tr>
    <tr>
        <td><select><option>xxx</option></select></td>
        <td>2</td>
        <td>3</td>
    </tr>
    </tbody>
    </table>
      

  3.   

    event.srcElement.style.display="none";