<html>
<script language="javascript">
    function func(){
        var t = document.getElementById("t1");
        for(var i = 0; i < t.rows.length; i++){
            for(var j = 0; j < t.rows[i].cells.length; j++){
                str = t.rows[i].cells[j].innerHTML;//读取出td的值
                alert(str);
            }
        }
    }
</script>
    <body onload="func()">
    <table id="t1" width="638" height="118" border="1">
      <tr>
        <td><p>1</p></td>
        <td><strong>2</strong></td>
        <td><p>3</p></td>
        <td>4</td>
      </tr>
</table>
</body>
</html>
代码如上,alert出来的有问题
把<p></p>也给alert出来了。代码要怎么修改才行啊,就以上面的代码为基础

解决方案 »

  1.   


    <html>
    <script language="javascript">
        function func(){
            var t = document.getElementById("t1");
            for(var i = 0; i < t.rows.length; i++){
                for(var j = 0; j < t.rows[i].cells.length; j++){
                    var str = t.rows[i].cells[j].innerHTML;//读取出td的值
                    alert(str);
                }
            }
        }
    </script>
        <body onload="func()">
        <table id="t1" width="638" height="118" border="1">
          <tr>
            <td><p>1</p></td>
            <td><strong>2</strong></td>
            <td><p>3</p></td>
            <td>4</td>
          </tr>
    </table>
    </body>
    </html>
      

  2.   


    虽然多了个var定义了一下str,但是还是一样的输出啊。我在 http://www.w3school.com.cn/tiy/t.asp?f=html_dropdownbox2
    上测试的
      

  3.   

    var str = t.rows[i].cells[j].innerText;//读取出td的值
      

  4.   

        function func(){
            var t = document.getElementById("t1");
            for(var i = 0; i < t.rows.length; i++){
                for(var j = 0; j < t.rows[i].cells.length; j++){
                    str = t.rows[i].cells[j].innerHTML.replace(/<[^>]+>/g,'');//去掉HTML
                    alert(str);
                }
            }
        }