2012-07-02 52 views
0

更新1我需要将自动完成添加到新创建的克隆。将不同的JQuery UI自动完成添加到动态创建的输入

$('input[name^="numEmp"]').autocomplete({ 

    source: Empleados,select: function(event, ui) {$(this).val(ui.item.value);return false;}});   

$('input[name^="servicioNom"]').autocomplete({ 

    source: Servicios,select: function(event, ui) {$(this).val(ui.item.value);return false;}}); 




    $(".Nuevo").on("click", function() { 
    $(".readdireccion:last").clone().insertAfter(".readdireccion:last"). 

    find('.emp').autocomplete({ 
    source: Empleados,select: function(event, ui) {$(this).val(ui.item.value);}}). 

    find('input[name^="servicioNom"]').autocomplete({ 
    source: Servicios,select: function(event, ui) {$(this).val(ui.item.value);}}); 



}); 

不能似乎让他们在那里

更新2!终于WORKING巨大的感谢萨尔曼一个!

$('input[name^="numEmp"]').autocomplete({ 

    source: Empleados,select: function(event, ui) {$(this).val(ui.item.value);return false;}});   

$('input[name^="servicioNom"]').autocomplete({ 

    source: Servicios,select: function(event, ui) {$(this).val(ui.item.value);return false;}}); 




    $(".Nuevo").on("click", function() { 
    $(".readdireccion:last").clone().insertAfter(".readdireccion:last") 

    $('input[name^="numEmp"]').autocomplete({ 

    source: Empleados,select: function(event, ui) {$(this).val(ui.item.value);return false;}});   

$('input[name^="servicioNom"]').autocomplete({ 

    source: Servicios,select: function(event, ui) {$(this).val(ui.item.value);return false;}}); 


}); 

希望这有助于任何人在这些问题

+0

导致重复ID的克隆会产生意想不到的结果。 –

+0

所以你认为重复的ID正在产生自动完成的问题? – 0rigin

+0

在大多数浏览器中,如果有多个'#Foo'元素,'$(“#Foo”)'只选择第一个元素。 –

回答

0

看一看this fiddle。就你而言,最好不要使用vanilla JavaScript来克隆元素。使用jQuery.clone()来克隆你的元素;并在新创建的元素上调用.autocomplete()。同样如我的评论所建议的,不要克隆具有(或包含具有)ID属性的元素的元素。重复的ID元素不好。

+0

谢谢!我开始得到某个地方,然而,在你发送给我的小提琴你只能删除一次后它忽略指令 – 0rigin

+0

尝试改变'.clone()'为'.clone(true)' –

+0

我做了,但现在autocompletes for新元素与第一个元素有某种联系。 – 0rigin

相关问题