UserID フィールドに ColdFusion autosuggest を使用しています。ユーザーがユーザー ID の入力を開始すると、ユーザー ID のリストがポップアップ表示されます (cfc 関数によって入力されます)。サンプルコード:
<cfinput name="userID" type="text" value="#userID#" autoSuggest="cfc:Utilities.suggestUser({cfautosuggestvalue})" matchcontains="true" />
autosuggest で値の 1 つを選択したときにハンドラーを起動して、選択した値を他の場所で使用できるようにしたいと考えています。JQuery コード:
$('#userID').change(function(){
var userID = $(this).val();
$('#otherUserIDField').html(userID);
});
問題は、autosuggest リストのアイテムをクリックすると、選択したエントリがフォーム フィールドに挿入される前に変更イベントが発生することです。たとえば、ユーザー「123456」を探していて、「123」と入力し始めて自動提案リストに表示された場合、自動提案リストで「123456」をクリックすると、変更イベントが発生します。フォームフィールドはまだ「123」です。遅延 ( ) を追加しようとしました$('#otherUserIDField').delay(1000).html(userID);
が、役に立ちませんでした。他に使用できるイベントはありますか?これを回避する方法はありますか?
自動提案が選択された後にのみコードを実行するにはどうすればよいですか?