jQuery无法识别克隆的输入

问题描述 投票:0回答:1

JQuery不识别克隆的对象,我有一个Jquery代码,它克隆了一个div,并改变了里面的输入名称,问题是我需要用这些克隆的输入来执行某些功能,我正在检查jQuery是否不识别它们,比如如果它们不存在,我把代码留在这里,先谢谢你。

Jquery代码克隆和ID重命名(工作完美的代码)。

    $('#div-materiales-{{$num}}').clone().appendTo('#material-form').prop('id', 'div-materiales-' + i);

    $('#div-materiales-' + i).find('input.total').attr('id', "total-" + i);
    $('#div-materiales-' + i).find('input.total').attr('name', "total-" + i);
i++;

当点击总输入-1时,应显示警报的代码。

$(document).ready(function () {

$("#total-1").click(function() {


    alert('funciona');

});

});

PS:我明白是克隆给我带来了问题,因为初始总数是total-0,而上面的代码却用了 共0个警报跳动 但正如我在这里所评论的 共1号 不,我得到的警报跳转。

javascript jquery
1个回答
1
投票

使用 "on "进行动态绑定

$("body").on('click','#total-1',function(){ // Previously i had issue here for dynamic bindings
 console.log('clicked')
});

$("body").on('keyup','#total-1',function(){
 console.log('key up')
});

0
投票

你需要使用on,并将事件附加到一个始终存在的元素上。

$('body').on('click', '#total-1', function() {
© www.soinside.com 2019 - 2024. All rights reserved.