動的に作成された入力 (再び jQuery で作成) で jQuery オートコンプリートを使用すると問題が発生します。新しい入力にバインドするオートコンプリートを取得できません。
オートコンプリート
$("#description").autocomplete({
source: function(request, response) {
$.ajax({
url: "../../works_search",
dataType: "json",
type: "post",
data: {
maxRows: 15,
term: request.term
},
success: function(data) {
response($.map(data.works, function(item) {
return {
label: item.description,
value: item.description
}
}))
}
})
},
minLength: 2,
});
入力を含む新しいテーブル行
var i = 1;
var $table = $("#works");
var $tableBody = $("tbody",$table);
$('a#add').click(function() {
var newtr = $('<tr class="jobs"><td><input type="text" name="item[' + i + '][quantity]" /></td><td><input type="text" id="description" name="item[' + i + '][works_description]" /></td></tr>');
$tableBody.append(newtr);
i++;
});
この問題は、ページが読み込まれた後に作成されるコンテンツが原因であることは認識していますが、それを回避する方法がわかりません。関連するいくつかの質問を読み、jQuery ライブ メソッドに出くわしましたが、まだ渋滞しています。
何かアドバイス?