【问题标题】:How to append values to a nested div using Jquery [duplicate]如何使用 Jquery 将值附加到嵌套的 div [重复]
【发布时间】:2015-03-18 13:54:04
【问题描述】:
<div id="myDiv1">
<table>
<tr id="row">
</table>
</div>
<div id="myDiv2">
<table>
<tr id="row">
</table>
</div> 

这里我需要将不同的'&lt;td&gt;'s 附加到这两个中。我试过这段代码 $('#row').append() 但它只是将'&lt;td&gt;'s 放入 myDiv1 行。 谁能帮我做这件事。

【问题讨论】:

  • ID 属性在 DOM 中应该是唯一的。
  • 用class代替id
  • 浏览器将快速 ID 查找存储为单个字典条目(ID 与单个元素)。这意味着 jQuery 和 Javascript 只能通过 ID 找到第一个匹配项。改用类。

标签: javascript jquery html css


【解决方案1】:

您的标记中有多个错误:

  1. 没有关闭&lt;tr&gt;-tags
  2. 非唯一 ID

因此 ID-Attribute 在其范围内必须是唯一的。 请参阅here 了解更多信息。

您的标记应如下所示:

<div id="myDiv1">
    <table>
        <tr class="row">
        </tr>
    </table>
</div>
<div id="myDiv2">
    <table>
        <tr class="row">
        </tr>
    </table>
</div> 

使用正确的标记,您的 jQuery 就可以正常工作:

$('.row').append('<td>test</td>');

Demo

【讨论】:

    【解决方案2】:

    您应该将 ID 属性更改为一个类。

    但是你为什么要使用两张桌子呢?也许您需要清理 html 并使其如下所示。

    <div id="myDiv1">
        <table>
            <tr class="row">
            </tr>
            <tr class="row">
            </tr>
        </table>
    </div> 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-23
      • 1970-01-01
      • 1970-01-01
      • 2019-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多