2

jquery Select2 プラグインで jquery datatables プラグインを使用しています。CSS クラスを独自のクラスでオーバーライドしようとしましたが、うまくいきませんでした。デフォルトの OS / ブラウザー スタイルで引き続き表示されます。

4

3 に答える 3

3

以前のイベントの場合は、次を使用しますpreInit

$(document).ready(function () {
  var dataTable = $('#datatables').DataTable({
  //your datatables settings
  });
});

$(document).on( 'preInit.dt', function (settings, json) {
    $('div.dataTables_length select').select2();
});

このようにして、データテーブルの init イベントが完了する前に選択が開始されます... Ajax を介してデータをロードしているために遅延がある場合は、おそらくこれが優れています。

https://datatables.net/reference/event/preInit

于 2018-02-11T21:15:51.360 に答える
1

テーブルがロードされた後、select 要素で select2 を呼び出します。

$(document).ready(function() {  

   // load datatable
   jQuery('#data_table').dataTable({
    ....do settings and other stuff
   });

   $('div.dataTables_length select').select2();

});
于 2013-05-16T06:16:56.550 に答える
1

fnInitCompleteDataTables が初期化されたときに呼び出される DataTables のコールバックを使用することもできます。ドキュメントのCallbacksページを参照してください。

これを実現するために DataTable のデフォルトを拡張する例を次に示します。

$.extend($.fn.dataTable.defaults, {
  "bPaginate": true,                /* just an example. can be false or removed altogether */
  "bLengthChange": true,            /* another example. */

  /* ... other options ... */

  "fnInitComplete": function(oSettings, json) {
    $(".dataTables_length .select2").select2({ 
      /* select2 options, as an example */
      minimumResultsForSearch: -1 
    });
  },
});
于 2014-04-14T19:09:19.360 に答える