4

不知道我在这里做错了什么。我在目录中有 DataTables:

MainFolder/common/js/DataTable-1.8.2/jquery.dataTables.min.js

并且像这样包括它:

<script src="common/js/DataTable-1.8.2/jquery.dataTables.min.js"></script>

我已经下载了最新版本的 TableTools 并尝试将它放在 DataTable-1.8.2 目录中的各个位置:

MainFolder/common/js/DataTable-1.8.2/TableTools-2.0.1

MainFolder/common/js/DataTable-1.8.2/Extras/TableTools-2.0.1

MainFolder/common/js/DataTable-1.8.2/media/(media/中包含的所有文件)

我正在像这样初始化我的表(在 Ajax 调用之后):

$('#grid-container').dataTable({
'aaData': response.AADATA,
"aoColumns": aoColumns,
"bJQueryUI": true,
"bDestroy": true,
"iDisplayLength": 20,
"sDom": '<"H"lTfr>t<"F"ip>'
});

我也尝试使用设置 sSwfPath 参数

"oTableTools": {
    "sSwfPath": "Extras/TableTools-2.0.1/media/swf/copy_cvs_xls_pdf.swf" //and many other permutations, including relative to the Main Folder root
}

我还尝试禁用 bjQueryUI 参数并使用常规 sDom 默认设置,以及将“T”标记放置在 sDom 字符串的不同位置。

我根本无法让 TableTools 在任何浏览器中显示。已安装 Flash Player 11.1.102.55。控制台显示没有错误。

4

4 回答 4

1

因为我使用了几种 css 样式和几个数据表版本(blitzer 就是其中之一),所以我将此代码粘贴到我的页面中。它将使用数据表 css 并排序和使用复制、.csv、.pdf 函数。包括一些典型的 H2 和字体设置。只是一个开始的好地方。

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">    
<script type='text/javascript' src='../jquery-ui-1.8.21/js/jquery-1.7.2.min.js'></script>
<script type='text/javascript' src='../jquery-ui-1.8.21/js/jquery-ui-1.8.21.custom.min.js'>     </script>
<script type='text/javascript' src=../jquery-ui-1.9.2/js/jquery-ui-1.9.2.custom.js'></script>
<script type='text/javascript' src='../DataTables-1.9.4/media/js/jquery.dataTables.js'></script>
<script type='text/javascript' src='../TableTools/js/dataTables.tableTools.js'></script>
<script type='text/javascript' src='../TableTools/js/dataTables.tableTools.min.js'></script>
<style type="text/css">
        @import "../DataTables-1.9.4/media/css/demo_table_jui.css";
        @import "../jquery-ui-1.10.3.custom/css/blitzer/jquery-ui-1.10.3.custom.css";
        @import "../TableTools/css/dataTables.tableTools.css";
  H2 {page-break-before: always}
  .display {font:arial;}
  </style>
  <script type="text/javascript" charset="utf-8">
        $(document).ready(function(){
            $('#datatables').dataTable({
            "bPaginate": false,
            "bLengthChange": false,
            "bFilter": true,
            "bInfo": false,
            "bAutoWidth": false,
            "bSort": true,
            "sDom": 'RCT<"clear">lfrtip',
            "tableTools": {
                "sSwfPath": "../TableTools/swf/copy_csv_xls_pdf.swf",
                "aButtons": [ "copy", "csv", "pdf"  ]
            }

        });
    });

  </script>
于 2014-05-13T14:02:09.090 回答
1

确保包含TableTools.js,ZeroClipboard.jsTableTools.css. 放置DataTables目录不会自动找到它。

于 2012-01-02T21:13:12.993 回答
1

我实际上并没有使用过 TableTools,但我确实激活过一次(只是为了看看它是什么)

我不确定这是不是原因,但是您是否尝试过将sDom示例中的设置设置为:

"sDom": 'T<"clear">lfrtip'

因为你发的不一样。

于 2011-11-29T11:29:44.533 回答
0

如果您已经使用 JQueryUI,这将起作用

$(document).ready(function() {
    $('#example').dataTable( {
    "bJQueryUI": true,
        "sPaginationType": "full_numbers"  ,
        "bLengthChange" : true,
        "iDisplayLength" : 25,
    "sDom": '<"H"Tfr>t<"F"ip>',
        "oTableTools": {
            "aButtons": [
                "copy","xls", "pdf"]
        }        
    } );
于 2013-07-29T13:18:04.810 回答