【问题标题】:Cloning Divs and changing labels克隆 Div 和更改标签
【发布时间】:2016-03-07 17:31:17
【问题描述】:

我已经设置了以下小提琴。 https://jsfiddle.net/yvnyk69v/3/

如您所见,我有三个 div,其中包含一个输入和一个复选框。每个 div 彼此独立,这意味着它们的标签不应由另一个 div 计数确定。在示例中,您可以看到我为 Group 1 提供了 group1Row 的 id。这允许每个克隆的输入都有一个标签,其末尾添加了计数。所以第一个标签是第一组,第二个标签是第一组 1。

我不认为 id 方法在这里是正确的方法。目前,我正在使用

var cloneG1 = $("#group1Row .clone");
var cnt = cloneG1.length + 1;

现在我真的不能为每个单独的 ID 执行此操作。我正在努力实现我为所有团体的第一组所做的工作。所以, 如果您向第 2 组添加新行,则标签应再次从 1 开始,而不是从前一组开始。而不是 ids,我认为 以某种方式使用$(this) 可能会有意义。

为每个 div 增加一个值的最佳方法是什么?

谢谢

【问题讨论】:

  • delegate 在 jQuery 1.7+ 中被 on 取代。我正在检查你的代码。

标签: javascript jquery clone


【解决方案1】:

我已经更新了你的小提琴。该代码现在似乎可以动态工作。我更改了以下行:

var cloneG1 = $(this).parent().parent().find('.clone').length;
var cnt = cloneG1 + 1;

https://jsfiddle.net/yvnyk69v/4/

【讨论】:

  • 完美,我也将委托更改为开启。当我取消选中一个复选框时,它应该删除其适当的输入。我现在拥有它的方式,我能够把事情搞砸。有没有办法让它在未选中时删除相关输入?谢谢
  • “删除相关输入”。这是什么意思?
  • 因此,在小提琴中,为第 1 组添加一些输入。完成此操作后,开始从顶部取消选中它们。您将看到一些输入仍然没有被选中。当某些东西未被选中时,它应该删除相关的输入。
猜你喜欢
  • 1970-01-01
  • 2011-01-12
  • 1970-01-01
  • 2013-08-19
  • 2012-04-24
  • 1970-01-01
  • 2021-05-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多