我必须从 jquery 的 .html() 中删除特定元素(带有#add_phone 的按钮)。
事情就是这样。一开始有field(phone number) + select(phone type) + button(#add_phone),三者都作为容器封装在div中。当我单击按钮时,它将通过 .html() 重新创建。JS如下:
$('#add_phone').click(function() {
$('div.multiple_number:last').after('<div id="phone_div_id' + phone_div_id + '" class="multiple_number">'+ $('div.multiple_number').html() +'</div>');
...
//append a remove [-] button, etc...
});
这是html:
<div class="multiple_number" id="phone_div_id0">
<label>Phone Number(s):</label>
<input name="phone" id="phone[]" placeholder="Phone Number"/>
<select name="phone_type[]" id="phone_type">
<option value="1">Mobile</option>
<option value="2">Home</option>
<option Value="3">Office</option>
<option Value="3">Fax</option>
</select>
<input type="button" name="add_phone" class="add_phone_class" id="add_phone" value="ADD MORE" />
</div>
所以实际上,我正在为一个表单创建多个电话号码。但是,这就是问题所在。里面是一个输入类型=“按钮”(#add_phone
按钮)。我想将它从.html() 中排除。
我试过了:
$('div.multiple_number:not(#add_phone)').html()
$('div.multiple_number:not(input#add_phone)').html()
$('div.multiple_number:not(#add_phone)').not(#add_phone).html()
$('div.multiple_number:not(#add_phone)').not(input#add_phone).html()
和类名对应,而不是使用id名。出于美学原因,我也不想将#add_phone 按钮放在 div 之外。