Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 删除克隆按钮不起作用_Jquery - Fatal编程技术网

Jquery 删除克隆按钮不起作用

Jquery 删除克隆按钮不起作用,jquery,Jquery,我有一个功能,可以在表单中克隆一组字段并为它们生成新名称,该功能的一部分是能够删除克隆,但它不想工作 功能 $(document).ready(function() { var newNum = 2; cloneMe = function(el) { var newElem = el.clone().attr('id', 'container' + newNum); newElem.html(newElem.html().replace(/form

我有一个功能,可以在表单中克隆一组字段并为它们生成新名称,该功能的一部分是能够删除克隆,但它不想工作

功能

$(document).ready(function() {
    var newNum = 2;
    cloneMe = function(el) {
        var newElem = el.clone().attr('id', 'container' + newNum);
        newElem.html(newElem.html().replace(/form\[1\]/g, 'form['+newNum+']'));
        newElem.html(newElem.html().replace(/id="(.*?)"/g, 'id="1'+newNum+'"'));
        $('#cloneb').before(newElem);
        $('#delete_name'+ newNum).html('<p id="rem_field"><a href="#"><span>Delete Line</span></a></p>');
        newNum++;
    };

    $('p#rem_field').live('click', function() {
    $(this).parents('div').remove();
    return false;
});    

});
$(文档).ready(函数(){
var-newNum=2;
克洛涅姆=功能(el){
var newElem=el.clone().attr('id','container'+newNum);
html(newElem.html().replace(/form\[1\]/g,'form['+newNum+']);
html(newElem.html();
$('#cloneb')。之前(newElem);
$('#delete_name'+newNum).html('

'); newNum++; }; $('p#rem_字段').live('click',function()){ $(this.parents('div').remove(); 返回false; }); });
以及删除按钮所在的div

<div id="delete_name"></div>


“删除”按钮对于每个克隆都应该是唯一的,我将如何进行更改以使其实际工作。JSFIDLE用于实时示例

很少更改。。。使用
delete\u name
作为类名

<div class="delete_name"></div>

然后

$(文档).ready(函数(){
var-newNum=2;
克洛涅姆=功能(el){
var newElem=el.clone().attr('id','container'+newNum);
$('#cloneb')。之前(newElem);
newElem.find('.delete_name').html('

'); newNum++; }; $(文档).on('click','rem_字段',function(){ $(this).closest('.instance').remove(); 返回false; }); });

演示:

很少更改。。。使用
delete\u name
作为类名

<div class="delete_name"></div>

然后

$(文档).ready(函数(){
var-newNum=2;
克洛涅姆=功能(el){
var newElem=el.clone().attr('id','container'+newNum);
$('#cloneb')。之前(newElem);
newElem.find('.delete_name').html('

'); newNum++; }; $(文档).on('click','rem_字段',function(){ $(this).closest('.instance').remove(); 返回false; }); });


演示:

一个元素的Id必须是唯一的use类,而不是delete ex的Id

$('.rem_字段')。live(…)
也因为您使用的是jquery 1.7,所以使用
.on()
而不是
.live()
$(文档)。on('click','.rem field',function(){
@ArunPJohny他应该在
上使用
,但1.7仍然支持它,所以没有问题。我做了您建议的更改,但是div仍然显示为空。元素的ID必须是唯一的use class,而不是delete ex的ID

$('.rem\u field')。live(…)
也因为您使用的是jquery 1.7,使用
.on()
而不是
.live()
$(文档)。on('click','rem_field',function(){..})
@ArunPJohny他应该在
上使用
,但是1.7仍然支持它,所以没有问题。我做了您建议的更改,但是div仍然显示为空,这很奇怪,当我单击“删除行”时,页面似乎要重新加载,但现在url末尾有一个“#”,但没有删除,我甚至直接从jsFiddle复制了一个新的空白页面,其中只包含来自jsFiddle的代码,我得到了相同的结果,“Delete Line”链接只需在url后重新加载带有“#”的页面并删除nothing@RathBaloth这意味着单击处理程序没有得到注册。您可以检查delete元素并查看class
rem\u字段是否存在。。。还有,使用的是哪个jQuery版本?哦,该死,对不起,我使用的是一个旧的jQuery,没有注意到。ThanksHmm非常奇怪,当我单击“删除行”时,页面似乎要重新加载,但现在url末尾有一个“#”,但没有删除,我甚至直接从JSFIDLE复制了一个新的空白页面,其中只包含JSFIDLE的代码,我得到了相同的结果,“Delete Line”链接只需在url后重新加载带有“#”的页面并删除nothing@RathBaloth这意味着单击处理程序没有得到注册。您可以检查delete元素并查看class
rem\u字段是否存在。。。还有,使用的是哪个jQuery版本?哦,该死,对不起,我使用的是一个旧的jQuery,没有注意到。谢谢