【问题标题】:jquery-datatables-rails TableTools buttons not working in Rails4 on Herokujquery-datatables-rails TableTools 按钮在 Heroku 上的 Rails4 中不起作用
【发布时间】:2014-07-24 09:37:18
【问题描述】:

我已将 swf 文件放入我的公共文件夹(在 public/swf/ 下) 有问题的JS是这样的:

$("#leave_requests").dataTable({
  "aaSorting": [],
  "sPaginationType": "bootstrap",
  "sDom": 'T<"clear">lfrtip',
  "oTableTools": {
      "sSwfPath": "/swf/copy_csv_xls_pdf.swf"
  }
});

我可以在日志中看到正在找到 swf 文件(大部分时间),我在 200 个文件中遇到间歇性的 304 个文件:

2014-07-24T09:30:58.331085+00:00 heroku[router]: at=info method=GET path="/swf/copy_csv_xls_pdf.swf" host=demo.leaverequest.co.nz request_id=d217e1d2-a995-4b35-8db2-80dae532dd37 fwd="101.98.148.9" dyno=web.1 connect=1 service=1 status=304 bytes=1152

在视图中,我可以看到按钮,但单击它们什么也不做(打印除外,但这不是由 swf 控件处理的)。

编辑——我也可以看到相关dataTables和tableTools js的加载:

jquery.dataTables.js?body=1
/assets/dataTables
GET 304
Not Modified
jquery.dataTables.bootstrap.js?body=1
/assets/dataTables/bootstrap/3
GET 304
Not Modified
dataTables.tableTools.js?body=1
/assets/dataTables/extras
GET 304
Not Modified

更新编辑: 如果您使用的是 jquery-datatables-rails,则不需要单独包含 ZeroClipboard。

【问题讨论】:

  • 很抱歉问了一个很明显的问题 - 但是您是否包含了 tabletools js 文件? (datatables.net/release-datatables/extensions/TableTools/js/…) 我不认为文件路径是你的问题,304 应该没关系,因为这只是意味着没有修改就可以了。
  • 好点,但他们在那里 - 用相关文件更新了帖子。
  • 如果不显式复制公共目录中的 swf 文件,它不应该工作吗?遇到类似的问题,现在找不到这些文件。

标签: ruby-on-rails-4 datatables tabletools


【解决方案1】:

好的,我终于知道是什么导致了这个问题,非常感谢 Birgit Martinelle!您的提示让我真正了解了 js 文件。

我正在使用 jquery-datatables-rails gem,它在 dataTables.TableTools.js 中包含 ZeroClipboard.js 内容

根据我在 dataTables.net 网站上阅读的内容,我还单独包括 ZeroClipboard,删除它,一切正常。

我也更新了问题,提供了一些更具体的细节

【讨论】:

    猜你喜欢
    • 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
    相关资源
    最近更新 更多