haoxiaolan 2022-07-21 09:09 采纳率: 35.3%
浏览 39
已结题

javascript获取元素


<body>
    <table border="1px" width="500px">
        <tr>
            <th>序号</th>
            <th>姓名</th>
            <th>年龄</th>
        </tr>

        <tbody id="hhh">
        </tbody>
    </table>

    <script>
          //问题
         var tb = document.querySelector("tbody");
         tb.innerHTML = "<tr><td>123</td><td>456</td><td>789</td></tr>";
    </script>
</body>

效果图

img

<script>
          //修改为有id获取元素
        var but = document.getElementById("hhh");
       but.innerHTML = "<tr><td>123</td><td>456</td><td>789</td></tr>"
    </script>

效果图

img

这是什么原因呀?

  • 写回答

4条回答 默认 最新

  • 崽崽的谷雨 2022-07-21 09:15
    关注

    这两种都行

    
     // var tb = document.querySelector("tbody");
            // console.log(tb)
            // tb.innerHTML+= "<tr><td>123</td><td>456</td><td>789</td></tr>";
    
    
            var tb = document.getElementById("hhh");
            tb.innerHTML+= "<tr><td>123</td><td>456</td><td>789</td></tr>";
    

    再或者给 表头加个 thead

     <thead>
                <tr>
                    <th>序号</th>
                    <th>姓名</th>
                    <th>年龄</th>
                </tr>
            </thead>
    
    

    你要是加了 tbody最好把 thead 也加上,要不然就用id获取 。因为tr 也算 tbody的内容 。你直接 innerhtml = 会覆盖 。要不然就拼接 +=

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月21日
  • 已采纳回答 7月21日
  • 创建了问题 7月21日