2016-06-27 11 views
0

私はhttps://github.com/evoluteur/structured-filterhttp://www.jquery-bootgrid.com/を使用して、ajax/phpで詳細検索を作成しています。構造化フィルタでbootgridを使用してchange.searchでパラメータを更新する

最初にコードが動作し、phpファイルからデータを返しますが、構造化フィルタを使用して$_GETという変数をjquery-bootgridを使用してphpファイルに渡そうとすると、私は苦労しています。

私が試しても、投稿するURLには$_GETという変数がありません。私は試しましたが、何も変わりません。

params変数が更新されていないようです。ここで

は全額私のjqueryのスクリプトです:

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#myFilter").structFilter({ 
     fields: [{ 
       type: "text", 
       id: "gamertag", 
       label: "Gamertag" 
      }, { 
       type: "text", 
       id: "name", 
       label: "Team Name" 
      }, { 
       type: "number", 
       id: "wagePerMatch", 
       label: "Wage Per Match" 
      }, { 
       type: "number", 
       id: "gamesRemaining", 
       label: "Contract Games Remanining" 
      }, { 
       type: "boolean", 
       id: "transferListed", 
       label: "Transfer Listed" 
      } 

     ] 
    }); 

    var params = ""; 
    $("#myFilter").on("change.search", function(event) { 
     var params = $("#myFilter").structFilter("valUrl"); 
     $("#grid-data").bootgrid("reload"); 
     console.log(params); // works, returns params 
    }); 



    $("#grid-data").bootgrid({ 
     ajax: true, 
     url: function() { 
      return "/api/search.php?" + params; // params never updates? 
     } 
    }); 


}); 
</script> 

は、それがのように、今そのだけ/api/search.php?に要求を送信する(パラメータが欠落)

答えて

1
$("#myFilter").on("change.search"に変更したときに .bootgridでのparamsを更新する方法はあります
Now i don't have to much reputation, i am unable to add comment on this, 

Please check this below URL, hope this will help you 

http://www.jquery-bootgrid.com/Documentation#events 

既存のグリッドに行を追加する場合は、URLで指定されているように「追加」を使用できます。または、テーブル全体を更新する場合は、テーブルを破棄して「ブートグリッド」オブジェクトを再作成できます。バイそれぞれのDOM IDに結びついています

+0

私はサイドchange.searchで破壊して再作成することは考えたことがありませんが、どのようにして.bootgridを破壊するかはわかりません。 – Koala

+0

ああ、bootgridにはビルドイン関数 '$("#grid ")があります。bootgrid(" destroy ")'これを以下に置く 'var params = $("#myFilter ")。structFilter(" valUrl ") ;そして新しいブートグリッドを作成すると私の問題は解決しました! – Koala

関連する問題