http://jqueryui.com/demos/autocomplete/の「focus」ドキュメントには次のように記載されています。
focusType:autocompletefocusフォーカスがアイテムに移動される前に(選択されていない)、ui.itemはフォーカスされたアイテムを参照します。フォーカスのデフォルトのアクションは、テキストフィールドの値をフォーカスされたアイテムの値に置き換えることですが、フォーカスイベントがキーボード操作によってトリガーされた場合に限ります。このイベントをキャンセルすると、値が更新されるのを防ぐことができますが、メニュー項目がフォーカスされるのを防ぐことはできません。
コード例
フォーカスイベントをinitオプションとして処理するためのコールバック関数を提供します。$( ".selector").autocomplete({focus:function(event、ui){...}}); 次のタイプでフォーカスイベントにバインドします:autocompletefocus。$( ".selector").bind( "autocompletefocus"、function(event、ui){...});
以下のコードを使用すると、要素を選択していなくても、すべてのオートコンプリート要素に「mytag」という属性と値「tester」が設定されます。ドロップダウンの1つがフォーカスされたときに属性「フォーカス」が追加されないのはなぜですか?ページがロードされたときに追加されるのではありませんか?
$("#myDiv").autocomplete({
source: availableTags,
focus: function(event, ui) {
$(".ui-autocomplete li").attr("mytag", "tester");
}
});