我有一个 JavaScript 代码,我从使用 .live() 的旧感冒中改编而来,将其更改为 .on(),因为我使用的是 JQuery 1.9.1:
添加新的输入字段可以正常工作。问题是单击“删除”时它没有删除添加的字段。它甚至没有运行事件点击事件,我无法弄清楚原因。
HTML 代码:
<h2><a href="#" id="addScnt">Add Another Input Box</a></h2>
<div id="p_scents">
<p>
<label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt" value="" placeholder="Input Value" /></label>
<a href="#" id="remScnt">Remove</a>
</p>
</div>
JS代码:
$(function() {
var scntDiv = $('#p_scents');
var i = $('#p_scents p').size() + 1;
$('#addScnt').on('click', function() {
$('<p><label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt_' + i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Remove</a></p>').appendTo(scntDiv);
i++;
return false;
});
$('#remScnt').on('click', function() {
alert('remove');
if( i > 2 ) {
$(this).parents('p').remove();
i--;
}
return false;
});
});