Dinamik olarak oluşturulmuş form giriş öğelerini tetiklemek için jQueryUI AutoComplete'ı kullanmaya çalışıyorum, ancak çalışmıyor. KeyUp.autocomplete ve keydown.autocomplete öğelerini $ .live() işlevine bağlama olarak denedim, ancak yeni öğelere bağlanıyor - yalnızca sayfada zaten var.Dinamik olarak oluşturulmuş bir öğeye jquery ui autocomplete nasıl ekleyebilirim?
here kodunu deneyin (ilk girdide "ava" yazmayı deneyin, sonra "Giriş Ekle" yi tıklayın ve yeni girdiye de aynı yazın).
JavaScript:
$(function() {
$("input#addButton").click(function() {
$("input.searchInput:last").clone(true).appendTo($(this).closest("form"));
$("input.searchInput:last").val("");
})
$("input.searchInput").live("keydown.autocomplete", function() {
$(this).autocomplete({
source: [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
],
minLength: 2
});
})
});
HTML:
<form name="myForm" method="post">
<input id="addButton" name="addButton" type="button" value="Add an input" />
<input name="search" value="" class="searchInput" maxlength="20" />
</form>
Sadece meraktan dışarı, bir denetim oluşturulan belirli nesne için oluşturulan bağlama her zaman yürütme denediniz mi? Sorun giderme için iyi bir başlangıç noktası ... – Dutchie432
@ Dutchie432: evet, yaptım - http://jsfiddle.net/6t74T/2/ - aynı sonuç. –
@Eric: Kemanınız (jsfiddle.net/6t74T/1) Chrome'da benim için çalışıyor. Eklenen kutuda otomatik tamamladım. – Mrchief