if (document.getElementById("top1").style.display=='none' )

解决方案 »

  1.   

    原因在于执行顺序问题
    这些先于你的HTML代码中id为top1的tr
    所以找不到对象报错
    放到后面或放到一个function中,在onload调用
    <script>
    if (document.top1.style.display=='' ){
    document.write("1----")
    }
    if (document.top1.style.display=='none' ){
    document.write("2----")
    }
    </script>
      

  2.   

    <script>
    function f1()
    {
     if (document.all.top1.style.display=="")
     {
     document.write("1----");
     }
     if (document.all.top1.style.display=="none")
     {
     document.write("2----");
     }
    }
    </script>
    <body onload="f1()">
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr> 
        <td><a href="javascript:;" onClick="top1.style.display=''" >sadfsadfasdfaf</a> 
          </td>
      </tr>
    <tr id="top1" style='display:none'> 
        <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td>1</td>
            </tr>
            <tr>
              <td>2</td>
            </tr>
          </table></td>
      </tr>
    </table>
    </body>
      

  3.   

    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr> 
        <td>
    <a href="javascript:;" onClick="top1.style.display=''" >sadfsadfasdfaf</a> 
          </td>
      </tr>
    <tr id="top1" style='display:none'> 
        <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td>1</td>
            </tr>
            <tr>
              <td>2</td>
            </tr>
          </table></td>
      </tr>
      <script>
    if (document.getElementById("top1").style.display=='none' )
    document.write("2----")
    else
    document.write("1----")
    </script>
    </table>
      

  4.   

    利用function定义成函数再调用,但是表格不显示了啊~只有输出1----,我是想实现动态显示和隐藏表格,然后根据两种状态输出不出的内容.
      

  5.   

    通过innerHTML实现
    <script>
    function f1()
    {
     if (document.all.top1.style.display=="none")
    document.getElementById("div1").innerHTML="为none时输出的"
    else
      document.getElementById("div1").innerHTML="不为none时输出的"
    }
    </script>
    <body onload="f1()">
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr> 
        <td><a href="javascript:;" onClick="top1.style.display=''" >sadfsadfasdfaf</a> 
          </td>
      </tr>
    <tr id="top1" style='display:none'> 
        <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td>1</td>
            </tr>
            <tr>
              <td>2</td>
            </tr>
          </table></td>
      </tr>
    </table>
    <div id="div1">
    &nbsp;
    </div>
    </body>