2

Chained Selects jQuery プラグインhttp://www.appelsiini.net/projects/chainedを使用しています。

しかし、2番目の選択要素にジャンプメニューを追加したいと思います。つまり、送信をクリックする必要があります。ハンドラーの変更を使用すると、チェーンされたスクリプトでトリガーされます。

  $(function(){
      $("#spotCat").chained("#locationCat"); 
      $("#spotCat").change(function(){
        window.location.href = $(this).val();
      });
  });

問題を回避する最善の方法がわかりませんか? 選択ドロップダウン矢印を「クリック」すると、クリックでトリガーされるイベントが発生しますか?

4

2 に答える 2

0

ifプラグインが機能する方法 (具体的には、依存オプション リストに入力するときに常に最初の項目が選択されたままになる方法) に基づいて、匿名changeイベント ハンドラー関数に 1 つ追加するだけで済みます。


if ($(this).find("option:selected").index() !== 0) {

デモ (ブラウザの開発者ツールを開き、コンソールに移動して、イベント ロジックがいつ起動するかを確認します。または、起動しない場合): http://jsfiddle.net/ywn6G/

ifコンテキスト内:


$(function(){
    $("#spotCat").chained("#locationCat"); 
    $("#spotCat").change(function(){
        if ($(this).find("option:selected").index() !== 0) {
            window.location.href = $(this).val();
        }
    });
 });
于 2013-01-26T06:21:02.633 に答える
0

次の方法は私にとってはうまくいくようです。ぼかしイベントはフォーカスされていない限りトリガーされないため、うまくいきます。変更イベントが提供しないもの。

$(function(){
      $("#spotCat").chained("#locationCat"); 
  $("#spotCat").change(function(){      
        this.blur()
  });
  $("#spotCat").blur(function(){
        if($(this).val().length !== 0) {
          window.location.href = $(this).val();
        }
  });

});

于 2013-01-28T17:24:45.913 に答える