1

我一直在使用 VisualForce 中的 DataTables 库,并且除了导出功能外,一切正常。我按照 DataTables 网站上的示例初始化,但收到一个错误,即 ZeroClipboard.js 在 TableTools.js 文件中未定义。但是,我已经检查并重新检查了多次,并且 zeroclipboard.js 在 Chrome 中被列为资源。

我做的唯一不同的事情,并且无法确定使函数适应 VisualForce 是如何正确调用 swf 文件。目前我将文件托管在本地服务器上并在函数中明确引用它。这可能是我的问题吗?上面的错误似乎并不相关,但这是我在进行大量故障排除后唯一想到的。

有谁知道我如何使 swf 文件成为 Salesforce 中的静态资源并从函数中以这种方式调用它,以便该文件与其他所有文件位于同一服务器上?

以下是我当前设置 DataTables 的函数(关于 swfPath 的问题:调用,如何使用静态资源执行此操作?)

var oTableTools = new TableTools( oTable, {
    "sSwfPath" : "www.MyWebsite.com/resources/copy_csv_xls_pdf.swf",
    "buttons": [
                "copy",
                "csv",
                "xls",
                "pdf",
                { "type": "print", "buttonText": "Print me!" }
               ]
});
$('#demo').before( oTableTools.dom.container );

       

4

1 回答 1

0

您可以通过上传 swf 文件(可以在 media/swf/copy_csv_xls_pdf 中找到)作为 salesforce 中的静态资源然后访问它来做到这一点

例如

 oTable = $('#example').dataTable(
            {
                "iDisplayLength": 20,
                "sDom": '<C><"H"T><"clear"><"H"l>t<"F"ip>',
                "oTableTools": {
                "sSwfPath": "{!$Resource.SWF_File}"
                },
                "oColVis": 
                {
                    "activate": "mouseover"
                },
                "bAutoWidth": false,
                "bJQueryUI": true, 
                "sPaginationType": "full_numbers",
                "aaSorting": [[ 2, "asc" ]] ,
                "bLengthChange": false, 
                "bFilter": true
于 2013-05-21T15:23:57.790 回答