2011-01-25 42 views
2

jqueryオートコンプリートUIのドロップダウンからユーザーに何かを選択させたいですか?私は "close"イベントを使って関数内でfalseを返そうとしましたが、これはうまくいきません。ユーザーが選択するまで、選択リストを開いたままにするにはどうすればよいですか?それを見るために必要な人のために jquery ui autocomplete:選択が行われるまで選択リストを開いたままにする方法

、4つの文字 の郵便番号で http://smartsend.ontech.com.au/quote タイプ - 私は開いているそのリストを維持したいです。

おかげ

ジェイソン

答えて

1

私はこれを行うための方法を見つけることができませんでしたので、私は結果を再び開く近いイベントのカスタムハンドラを追加するブロックのUIプラグイン

2

を使用し、結果は決して閉じられないので少し迷惑です。ユーザーが選択した後に結果を開いたままにしておくことができるようにしました。ユーザーが選択して他の場所をクリックしていない場合、またはユーザーがエスケープしたり、入力テキストを削除したりすると、通常は結果を閉じるその他のことを行います。ここでは私のために働いていたものです:

close : function (event, ui) { 
    event.preventDefault(); 

    if (event.which == 1) { 
     $("ul.ui-autocomplete").show(); 
     $("ul.ui-autocomplete").data('keep-open', 1); 
    } 
    else if ($("ul.ui-autocomplete").data('keep-open') == 1) { 
     $("ul.ui-autocomplete").show(); 
     $("ul.ui-autocomplete").data('keep-open', 0); 
    } 

    return false; 
} 

event.whichは、1ユーザーが選択を行っている際に、しかし、別のcloseイベントはすぐに従うだろうと、とにかく結果を閉じています。そこでkeep-openフラグを追加しました。おそらく、その合併症を処理するより良い方法があります。

また、ユーザーが選択を完了したときに結果を手動で閉じることができるように、単純な閉じるボタンも追加しました。

関連する問題