0

ページの非表示要素にあるテーブルにデータテーブルを読み込むときに問題が発生しました。私が持っているのは「タブ」ベースの少数のページで、その時点で表示されているのはアクティブなタブだけですが、アクティブになるまでの他のすべてのタブはdisplay:noneです。タブを手動で呼び出してプライマリタブにする場合、テーブルまたはその列に問題はありません。タブが最初に非表示になっている場合にのみ、テーブルの初期表示の問題が問題になります。

列ヘッダーをクリックして特定の列を並べ替えると、テーブルが自動的に修正され、列が一緒に圧縮/圧縮されなくなったため、初期表示と言います。

これは私の現在のデータテーブルコードです

$('#'+tableID).dataTable(
{
    "sPaginationType": "full_numbers",
    "bPaginate": false,
    "bFilter": false,
    "bAutoWidth": true,
    "sScrollY": tableY+"px",
    "bScrollCollapse": true,
    "oLanguage": {
        "sInfo": "Showing _END_ Events."
    },
    "aaSorting": [[ 1, "asc" ]],
    "aoColumns": [
         null,
         null
       ]
});

そして私は次のような列幅を指定しようとしました:

"aoColumns": [
         { "sWidth": "80%" },
         { "sWidth": "20%" }
       ]

これも機能しません。そのため、私は現在この問題を解決しようとして立ち往生していますが、どこからどのように始めればよいのかよくわかりません。

また、議論のために、私のテーブル構造が似ているとしましょう。

<table>
   <thead>
     <tr><td></td><td></td></tr>
   </thead>
   <tfoot>
     <tr><td></td><td></td></tr>
   </tfoot>
   <tbody>
     <tr><td></td><td></td></tr>
     <tr><td></td><td></td></tr>
     <tr><td></td><td></td></tr>
   </tbody>
</table>
4

1 に答える 1

0

私は自分の検索を通じて自分の問題を解決し、datatables /jqueryuiに関連するAPIドキュメントに記載されている例に基づいて解決しました。

私の解決策は、jquery uiのタブイベントにバインドしてから、関数を起動して、選択したタブに基づいて必要なテーブルを作成することでした。

$(document).ready(function() {
    $("#storage").bind('tabsselect', function(event, ui)
    {
        if (ui.index === 1)
        {
            tables.statistics("metrics", "metric");
        }
    });
});
于 2012-05-31T19:00:42.043 に答える