【问题标题】:Adding an element behind an element with .After() takes the previous added elements with them. (JQuery)使用 .After() 在元素后面添加元素会使用之前添加的元素。 (jQuery)
【发布时间】:2017-02-09 15:32:43
【问题描述】:

我有一个动态列表,可以在其中添加文件字段。但是当我添加多个字段时,所有添加的删除按钮都会被推送到最后添加的字段。

当我使用.before() 而不是.after() 时,它确实可以正常工作,只是它在我不想要的元素之前..

演示:

https://jsfiddle.net/yokLpnwo/11/

【问题讨论】:

  • 你到底想要什么?
  • 我想让所有字段都有一个删除按钮:) @NalinAggarwal

标签: jquery insertafter


【解决方案1】:

嗯,在 Dom 上添加了 Button,它是您的按钮 css 在 remove Button 上,它使您的按钮彼此重叠。

'<button type="button" id="remove' + (next) + '" class="btn btn-danger remove-me"  style="margin-top: -34px; position: absolute; right: 40%;" >-</button></div><div id="field">'

您使用此按钮添加的 CSS 会导致您的按钮相互重叠。将边距顶部分别更改为将其与变量next相乘,如下所示,

'<button type="button" id="remove' + (next) + '" class="btn btn-danger remove-me"  style="margin-top: -'+(next*34)+'px; position: absolute; right: 40%;" >-</button></div><div id="field">'

【讨论】:

  • 谢谢!它正在工作,也许有变化 *34 但我明白了这个概念:)
  • 是的,必须将 margin-top: 改为 top:
猜你喜欢
  • 2011-10-22
  • 1970-01-01
  • 2015-11-03
  • 2012-08-26
  • 1970-01-01
  • 2012-03-18
  • 2011-10-31
  • 2020-05-29
  • 1970-01-01
相关资源
最近更新 更多