2016-11-10 6 views
1

DataTablesの列にmin-widthを指定するにはどうすればよいですか?列の最小幅を指定する方法は?

幅が可変なので、classNameのクラスは使用できません。 widthオプションでは不十分です。 styleオプションは表示されません。

+0

実行時に 'min-width'を割り当てたいのですが、あらかじめ定義された最小幅でクラスを使用したくないのですが、正しいのですか? –

+0

@ Gyrocode.comそうですね。個々のページごとに、個々の列ごとに何百ものCSSクラスを作成する必要はありません。 – mpen

答えて

3

CSSルールをCSSファイルに保存するには、クラス名または複数のクラス名とcolumns.classNameオプションを使用することをお勧めします。あなたは実行時にmin-width値を割り当てる場合

ただし、TR要素がテーブルの体のために作成されるたびにコールバックを定義するためにcreatedRowオプションを使用することができます。

var table = $('#example').DataTable({ 
    'createdRow': function(row, data, dataIndex){ 
     $('td:eq(3)', row).css('min-width', '200px'); 
    } 
}); 

コードとデモンストレーションについては、this exampleを参照してください。

+0

'createdRow'よりも良いコールバックはありませんか?本当にそれはヘッダーで一度だけ実行する必要があります。 – mpen

+2

@mpen、私はそれがヘッダーで一度行う必要があり、 'initComplete'と' th'要素をターゲットにすることができると同意します。しかし、ある種の場合(例えば、垂直スクロール)、DataTablesはヘッダーのためだけに別のテーブルを作成するので、ヘッダーに 'min-width'を設定するとレイアウトが損なわれ、特別な処理が必要になります。上記の解決策は普遍的です。 –

関連する問題