私は2人の個人を入力する必要があるフォームを設計しています。両方のフィールドはjquery-uiのオートコンプリートによってサポートされています。オートコンプリートの動作は同じです。複数のフォームフィールドに同じオートコンプリートアクションを適用しますか?
実際にフォームに入力環境、両方のフィールドが自動補完候補を取得するための正しいAJAX要求を送信します:ここで
は、私が直面しています問題です。しかし、最初の形式だけが結果リストを正しく出力します。私が現在使用してセレクタがある:
$(".person_input").autocomplete()
とセレクタが解決しない変更:
$("#person1,#person2").autocomplete()
私は、セレクタまたは一部を変更することができますどのような方法があるかどうかを知りたいですオートコンプリートの動作を使用するので、同じ関数を自分のコードに2回書く必要なく、両方のフィールドにオートコンプリートを正しく適用できます。
<input type="text" value="" name="person1" class="person_input" id="person1">
<input type="text" value="" name="person2" class="person_input" id="person2">
となどautcompleteコード:
$(".person_input").autocomplete({
source: function(request, response) {
$.ajax({
url: "/ajax/get_person/",
data: {'q':request.term},
dataType: "json",
type: "POST",
success: function(data){
response(data);
},
});
},
focus: function(event, ui) {
$(this).val(ui.item.name);
return false;
},
select: function(event, ui) {
$(this).val(ui.item.name);
return false;
}
}).data("autocomplete")._renderItem = function(ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.name + "</a>")
.appendTo(ul);
};
この包括的な応答ありがとう! – rickypai