動的に追加された入力フィールドにjQuery UIオートコンプリートウィジェットをバインドしようとしています。私はここにいくつかの記事を読みましたが、誰も助けてくれないようです。動的に追加されたフォームフィールドにオートコンプリートをバインドする
私が使用しているコードはDynamically adding a form to a Django formset with Ajaxです。私はそれを少し修正してオートコンプリートをバインドしました。
ただし、バインドは機能していないようです。新しく追加されたフィールドに入力するたびに、オートコンプリートボックスは表示されません。私が使用していたコードは次のとおりです。
function cloneMore(selector, type,field) {
var newElement = $(selector).clone(true);
var total = $('#id_' + type + '-TOTAL_FORMS').val();
newElement.find(':input').each(function() {
var name = $(this).attr('name').replace('-' + (total-1) + '-','-' + total + '-');
var id = 'id_' + name;
if ($(this).attr('type') != 'hidden') {
$(this).val('');
}
$(this).attr({'name': name, 'id': id}).removeAttr('checked');
});
newElement.find('label').each(function() {
var newFor = $(this).attr('for').replace('-' + (total-1) + '-','-' + total + '-');
$(this).attr('for', newFor);
});
total++;
$('#id_' + type + '-TOTAL_FORMS').val(total);
$(selector).after(newElement);
/* create the selector string and bind autocomplete */
var select_string = "#id_"+type+"-"+(total-1)+"-"+field;
$(select_string).autocomplete({
source: asset_universe_codes,
});
}
私はオートコンプリートソースが関数内でアクセス可能であることを確認しているので、私は途方に暮れてよ。
誰でも手助けできますか?
おかげで、
ジェイソン
.on()とdelegate()を試しましたか? – Chibuzo
私はそうではありません。私はjQueryには比較的新しいので、私はそれらのメソッドを知らなかった。デリゲートは、有望な感謝のようです。 – xyzjace