私はjqueryオートコンプリートを使用しています。私のケースでは、私のページに複数のオートコンプリートのテキストボックスと非表示のフィールドがあります。 例えばJqueryオートコンプリートが正しく動作しない
<input class='myclass' type='text'> </input>
<input class='.emp_num_hidden' type='hidden'> </input>
<input class='myclass' type='text'> </input>
<input class='.emp_num_hidden' type='hidden'> </input>
のように...
私は、隠しフィールドの変更イベントを発生時にそれが発生し、複数の時間 は、以下の私のコードです:
$(".myclass").each(function() {
var $empName= $(this);
var $empNumber = $empName.next('input:hidden');
//things to do
//Setting variable e.g url...
$empName.autocomplete(url,{
//code...
}).result(function(event,data,formatted)
{
$empNumber.val(formatted).change();
});
});
上記のコードで$ empNumberは、オートコンプリート値を格納するために使用される隠しフィールドを保持します。つまり、 オートコンプリートからテキストを選択すると、その選択した従業員番号は隠しフィールドに格納されます。 この隠しフィールドの値に基づいて、私は彼の 従業員番号に基づいて従業員の詳細を返すajaxコールを行いたいと思います。 私は以下のように隠しフィールドのイベントを変更するために手書きを書いています。
$(.emp_num_hidden).on('change',function (
)};
ここで、 'emp_num_hidden'は、非表示フィールドのクラスです。
隠しフィールドの変更で複数のイベントが発生しないようにするにはどうすればよいかお勧めします。
感謝..しかし、複数回発射イベントを防ぐことができます$これを使ってどのように私はここで理解していませんでしたか?隠しフィールドの変更ハンドラでは、すでに述べたようにこのオブジェクトを使用しましたが、イベントの発生回数は複数回変更しています。イベントバインディングの問題はありますか? – NullException
jquery autocomplete 1.0 versionを使用しています。その中でselectイベントを実装する方法に関する十分なドキュメントが見つかりませんでした。あなたはこれのソースを知っていますか? – NullException
@ Shubhさんはあなたの投稿に特定のものを使用していると指定していませんでした。私の例では、jQeury 3.1.1とjQuery UI 1.12.1を使用しています。可能であれば、より新しいバージョンのjQuery UIを使用します。あなたのバージョンでテストする方法はありません。私の答えを更新できるように、使用しているjQueryとjQuery UIのバージョンで投稿を編集して更新してください。 – Twisty