2017-04-12 1 views
1

yadcfプラグインでDataTableを使用しています。サーバー上のAPIと一致するように送信パラメータを上書きしたいとします。yadcfプラグインを使用したDataTables - 送信されたパラメータを無効にする方法

例:カラムオーダーはcolumnsの3列目です。columns[2].search.valueの代わりにorderSearchというパラメータを送信したいとします。

どうすればいいですか?どのようにパラメータを操作できますか?

答えて

2

サーバに送信されるパラメータを操作するには、ajax.dataオプションを使用します。例えば

$('#example').DataTable({ 
    "processing": true, 
    "serverSide": true, 
    "ajax": { 
    "url": "/script.php", 
    "data": function(d){ 
     d.orderSearch = d.columns[2].search.value; 
    } 
    } 
}); 

また、あなたは、デフォルトのDataTableのレスポンスオブジェクトにマージされることはありません独自のオブジェクトを作成して返すことができます。デモンストレーションについては、this exampleを参照してください。

+0

しかし、DataTableからパラメータを送信するのを防ぎ、カスタムパラメータのみを送信することはできますか?サイト上では、DataTableからデフォルトのパラメータを送信しないように、データを追加する機能しか表示されないためです。サンプルコードを表示できますか?ありがとう! – Bardr

+1

@Bardrの場合は、特に['function'](https://datatables.net/reference/option/ajax.data#function)をオプション値として使用することについて、参照されたドキュメントをお読みください。デフォルトのDataTablesレスポンスオブジェクトとマージされない独自のオブジェクトを作成して返すことができます。デモンストレーションについては、[この例題](https://jsfiddle.net/hbem11sw/1/)を参照してください。 –

関連する問題