附加而不是下面。怎么了?

时间:2011-06-20 15:01:14

标签: javascript jquery

在这个jsFiddle中

http://jsfiddle.net/littlesandra88/tZqYX/

我是否希望在点击“详细信息”的位置下方插入新的<tr>

我做

$('.row').append("<tr><td>It worked</td></tr>");

但这会导致

<tr class="row">
  <td class="edit-column"><a href="javascript:addRemove('7249');">Details</a> <input value="Save" type="submit"></td>
<tr><td>It worked</td></tr></tr>

我希望

<tr class="row">
  <td class="edit-column"><a href="javascript:addRemove('7249');">Details</a> <input value="Save" type="submit"></td>
</tr>
<tr><td>It worked</td></tr>

知道如何解决这个问题吗?

8 个答案:

答案 0 :(得分:4)

尝试$('.row').after("<tr><td>It worked</td></tr>");

.append.将行附加到.row行。使用.after会将行放在.row行

之后

答案 1 :(得分:2)

尝试使用.after()代替.append()

$('.row').after("<tr><td>It worked</td></tr>");

答案 2 :(得分:1)

您基本上是在尝试添加到现有行。您需要将新行添加到表中。或者尝试类似下一个$行的内容。

答案 3 :(得分:1)

请尝试使用.after()。 .append()用于在子列表末尾的指定元素中粘贴内容

答案 4 :(得分:0)

$(<tr><td>It worked</td></tr>").insertAfter($('.row'));

答案 5 :(得分:0)

您需要将新行追加到tbody元素,而不是追加到行本身

答案 6 :(得分:0)

您基本上是在尝试添加到现有行。您需要将新行添加到表中。或者尝试类似下一个$行的内容。

$('#accTable').append("<tr><td>It worked</td></tr>");

答案 7 :(得分:-1)

.after()可能就是你要找的东西。它会在row元素之后附加文本。