2014-10-27 82 views
0

我看到一幫像我這樣的話題,我測試了很多,但我沒有運氣。 在按一下按鈕,用戶可以複製形式的ceartain部分,包括Ajax的自動完成搜索。表單的這部分是一次硬編碼,搜索過程很好。 但克隆部分的搜索過程不起作用。自動完成對動態輸入字段

我嘗試添加了一些每個colned輸入並調用就可以了funtion,但不知何故,這是行不通的。

這是自動完成功能

function autocomplete(actor_field) { 

$(actor_field).autocomplete({ 

    minLenght:0, 
    delay:0, 

    source: function(request, response) { 
        $.ajax({ 
        url : 'path', 
        dataType: "json", 
        type: "POST", 
        data: {search: request.term,}, 

        success: function(data) { 
         response($.map(data, function(item) { 
          return { 
           label: item.first_name + ' ' + item.last_name, 
           value: item.actor_id 
          } 
         })); 
        } 
        }); 
       }, 

messages: { 
    noResults: '', 
    results: function() {} 
}, 

open: function() { 
    $("ul.ui-menu").width($(this).innerWidth()); 
} 

}); 
} 

這是克隆功能

$("#add_character").on("click", function(event){ 

event.preventDefault(); 

actor_id++; 

var newDiv = $('#character_form').clone(true); 
$(newDiv).find('#voice_actor').attr('id', 'voice_actor' + actor_id); 
$(newDiv).appendTo('#character'); 

var actor_field = '#voice_actor' + actor_id; 
alert (actor_field); 

autocomplete(actor_field); 

}); 

回答

0

你需要用你自動完成「接通」的方法一個jQuery使本次活動將綁定到新的/克隆的元素。

請參見: http://api.jquery.com/on/

+0

感謝您的回答!我嘗試過,但我不確定如何使用它。它仍然沒有工作(見更新的代碼) – Taiga 2014-10-27 21:29:57

+0

你會做$(「 some_container_element‘)。在(’點擊」,‘#add_character’,函數(E){ – morissette 2014-10-28 01:27:03

+0

我想了好幾個小時,我已經閱讀很多帖子的解決方案我的問題,但不知何故,任何方法都行不通 有關詳細信息:#characters是div我要追加的形式#character_form是我在克隆和#voice_actor是輸入字段的形式。具有自動完成功能,每次只能在一個硬編碼輸入字段上工作 – Taiga 2014-10-28 03:02:51