【问题标题】:jQuery DataTables within jQuery UI TabsjQuery UI 选项卡中的 jQuery DataTables
【发布时间】:2015-02-09 16:36:38
【问题描述】:

如何调整 jQuery UI 选项卡中的 jQuery DataTables 列?

这是我的 JS 代码:

$('#myTab a').click(function (e) {
      e.preventDefault();
      $(this).tab('show');
});

$('#myTable').DataTable();

这就是 DataTables 建议集成的方式,但我必须如何
自定义代码才能使用我的点击功能:

$(document).ready(function() {
$("#tabs").tabs( {
    "activate": function(event, ui) {
        $( $.fn.dataTable.tables( true ) ).DataTable().columns.adjust();
    }
} );

$('table.display').dataTable( {
    "scrollY": "200px",
    "scrollCollapse": true,
    "paging": false,
    "jQueryUI": true
} );
} );


https://datatables.net/examples/api/tabs_and_scrolling.html

【问题讨论】:

    标签: javascript jquery jquery-ui jquery-datatables


    【解决方案1】:

    尝试将函数添加到您的点击事件中:

    $('#myTab a').click(function (e) {
       e.preventDefault();
       $(this).tab('show');
       $('table.display').DataTable().columns.adjust();
    });
    

    或者根据数据表版本,旧的 api 版本也应该可以工作:

    $('#myTab a').click(function (e) {
       e.preventDefault();
       $(this).tab('show');
       $('table.display').dataTable().fnAdjustColumnSizing();
    });
    

    【讨论】:

    • 还是不行。例如,一列称为产品。产品名称由四个单词组成,所有单词都由一个 break 命令分隔。
    • 不确定.. 我已经使用了与上面的 jQuery UI 选项卡几乎相同的东西,并且效果很好。列调整的要点只是在启用滚动时使标题与正文对齐。你看到错位了吗?
    • 是的。 thead 部分(列标题)不适合 tbody 部分(列值)...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多