2012-02-10 25 views
0

Jqgridにフィルタがあります。フィルタのドロップダウンリストを変更すると、関数が実行されます。私が現在のコードで得ている問題は、変更前の値を使用していて、後の値を使用していないことです。あなたはfilterToolbar方法のbeforeSearchコールバックオプションを使用することができます検索ツールバーを使用する場合はJqgridフィルタの変更時にドロップダウンリストの値を取得する方法

{ name: 'STATUS', index: 'STATUS', sortable: false, width: 80, stype: 'select', 
    searchoptions: { value: ":All;Active:Active;Not active:Not active", 
        dataEvents: [ 
          { type: 'change', 
           fn: function() { 
             alert($('#Jqgrid').getGridParam('postData').filters); 
             } 
            } 
           ] 
        } 
    }, 
+0

"Jqgrid filter"の意味は? [ツールバー検索](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:toolbar_searching)または[検索ダイアログ](http://www.trirand.com/jqgridwiki/doku)を使用しますか? .php?id = wiki:advanced_searching) 'jqFilter'メソッドを使用していますか?変更後に変更された値を持つ必要があるのはなぜですか?あなたは検索する前に値を持っていますか?それは同じではありません。あなたがしていることと必要なものについてさらに詳しく説明してください。 – Oleg

+0

ツールバー検索のドロップダウンリストで、選択した値の値を取得しようとしていました。私は$( '#Jqgrid')。getGridParam( 'postData')。filtersをloadComplete関数で使用して解決しました。 – ffffff01

答えて

0

は現在、私は次のコードを持っています。メソッドの内部では$('#Jqgrid').jqGrid('getGridParam', 'postData').filtersを使用して、フィルタを取得し、変更することもできます。の前に使用されます。あなたは例としてthe answerを見ることができます。

あなたはフィルタが適用され、フィルタリングされたデータはあなたがloadCompletepostData.filters内部にアクセスする必要がありますロードされ後に何らかのアクションをしたい場合。例としてanother answerを参照してください。

0

はして値を取得しよう:

... 
dataEvents: [ 
         { type: 'change', 
          fn: function() { 
            console.log("value", $(this).val(), $(this).find("option:selected").val()); 
            } 
           } 
          ] 
       } 
... 

によってウィッヒのjQueryのバージョンが使用されています。

関連する問題