HTML:
<div class="main_holder">
<div class="input_holder">
<label for="something">Email</label><br/>
<input type="text" id="field_input" name="email" />
</div>
<a href="#" class="add">Add+</a>
<div class="input_holder">
<label for="something">Address</label><br/>
<input type="text" id="field_input" name="address" />
</div>
<a href="#" class="add">Add+</a>
<div class="input_holder">
<label for="something">Name</label><br/>
<input type="text" id="field_input" name="name" />
</div>
<a href="#" class="add">Add+</a>
</div>
jQuery
$('a.add').click( function() {
var n=$(this).prevAll('.input_holder').size()+1;
$(this).prev('.input_holder').clone().insertBefore(this);
$(this).prev('.input_holder').find('label').append(n);
return false;
});
因此,如果我的标签名称是电子邮件,那么之后的结果是:
- 第一次点击:电子邮件 2
- 第二次点击:电子邮件 23
- 第三次点击:电子邮件 234
这样做的原因是因为在每次附加之后,它都会采用已经有数字的前一个。所以我现在的问题是如何解决这个问题,所以它每次只放第一次
我想要的结果:
- 第一次点击:电子邮件 2
- 第二次点击:电子邮件 3
- 第三次点击:电子邮件 4