我已将 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。