在Jquery中追加删除动态元素

时间:2014-04-17 06:08:13

标签: jquery

我有一个问题,实际上我想在按钮点击中将两个动态文本框附加到div标签,当下次单击按钮时,它应该删除以前附加的动态文本框并重新附加新文本框!!

这是我的jsfiddle:

http://jsfiddle.net/pUeue/1437/

   var addDiv = $('#divAdd');
    $(addDiv).parents('p').remove();
        for (var i = 0; i < 2; i++) {
            $('<p><input type="text" style="width:120px;" id="p_new" name="p_new_' + i + '"/></p>').appendTo(addDiv);

2 个答案:

答案 0 :(得分:1)

在附加的p标签上添加一个虚拟类,并在该类的应用选择器上删除,如下所示:

$('input[type=button]').click( function() {
 alert("test");   

    var addDiv = $('#divAdd');
 $('p.test').remove();
            for (var i = 0; i < 2; i++) {
                $('<p class="test"><input type="text" style="width:120px;" id="p_new" name="p_new_' + i + '"/></p>').appendTo(addDiv);
            }

});

Wokring Fiddle

答案 1 :(得分:0)

您可以删除input不是#divAdd的{​​{1}}内的所有id

txtMobile

此外,您需要使用$('input[type=button]').click(function () { var addDiv = $('#divAdd'); addDiv.find('input').not('#txtMobile').remove(); for (var i = 0; i < 2; i++) { $('<p><input type="text" style="width:120px;" class="p_new" name="p_new_' + i + '"/></p>').appendTo(addDiv); } }); 代替class="p_new",因为id="p_new"必须是唯一的。

<强> Fiddle Demo