【发布时间】:2014-05-16 16:13:18
【问题描述】:
我可能说错了,但这里是这样。我有一个表格,您可以在中间填写一个部分,让您使用“添加更多”按钮添加更多地址。
我的html:
<div class="address">
<div class="street">
<input type="text" name="street[]">
</div>
<div class="city">
<input type="text" name="city[]">
</div>
<div class="addmoreadd">
<button type="button" id="addmore">Add More Address</button>
</div>
</div>
jQuery:
var rowNum = 0;
$("#addmore").click(function() {
rowNum++;
$('.address').attr('id', 'address' + rowNum);
var html = $('.address').html();
jQuery('.address').append(html)
var rm = "<button type='button' class='btn' id='rmbtn'>Remove</button>"
$('addmoreadd').append(rm);
$('#rmbtn').click(function() {
$('#address' + rowNum).remove();
});
});
我是 jquery 的新手,所以我仍在学习语法和功能,但在这里我尝试在每次单击“添加更多地址”按钮时附加额外的地址字段,通过添加增加父 div <div class="address">一个 id # 来标识删除按钮要定位的号码。我希望用户只能在第一个默认地址之后删除其他地址。
当添加更多地址按钮被单击一次时执行正常,之后它会继续添加更多彼此相邻的删除按钮。此外,当添加更多地址字段时,id 是相同的(#address0 的行)。
请指引我正确的方向!
编辑:这是我没有使用添加更多电话按钮的原始示例:
【问题讨论】:
-
你是动态创建这些DOM元素,你应该使用jQuery的
.on()方法,而不是.click()。 -
@DevlshOne 好的,但是增量呢?
-
能否请您在 JSfiddle 上传完整的问题,我无法确定确切的需求。
-
你刚刚完全改了代码!
-
为了将来参考,请在您的问题已经收到答案后仔细考虑对其进行实质性更改。虽然没有人禁止您进行更改,但它会使答案看起来与问题脱节。如果您的问题发生了重大变化,通常最好发布一个新问题(如果相关,可能链接到旧问题)。
标签: javascript jquery html