Я пытаюсь запустить jQueryUI AutoComplete для запуска динамически созданных элементов ввода формы, но он не работает. Я пробовал использовать keyup.autocomplete и keydown.autocomplete как события привязки в $.live(), но привязка к новым элементам - только те, которые уже находятся на странице.
Попробуйте код здесь (попробуйте ввести "ava" в первый вход, затем нажмите "Добавить вход" и введите его в новый вход).
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>