2016-04-04 3 views
4

解決策が見つからないデータテーブルの印刷ボタンに非常に奇妙な問題があります。Datatable Button Error:Uncaught Unknownボタンのタイプ:print

奇妙なことは、別のページのデータセットですでに印刷ボタンを使用していたことです。

現時点では、jquery-datatables-rails gem(バージョン3.3.0)のデータセットを含む、ruby on railsプロジェクトに取り組んでいます。

さらに、アセットパイプライン(dataTables.buttons.minおよびbuttons.datatables.min.css)のファイルパスを参照することによって、ボタン用のCSSファイルとJSファイルを含めます。

すべてのファイルは問題なく、またはエラーメッセージなしでロードされます。 データテーブル作品のイニシャライズだけでなく、その後私は、下記のオプションを追加:初期化子に

dom: 'Bfrtip' 
buttons: [ 'print' ] 

を、それが以下のエラーメッセージが表示されてクラッシュします:

Uncaught Unknown button type: print dataTables.buttons.min.js?body=1:18

残念ながら私は見つけることができませんでしたインターネットで同じ問題を抱えている人。

私はhttps://datatables.net/extensions/buttons/の指示に従って、2つのファイルをマイページに追加しました。また

、私が代わりに印刷ボタンのエクセルボタンを使用しようとすると、エラーメッセージが表示されませんが、まだボタンが現れていません。

div.dt-buttonsは空です。

どうすれば解決できますか?

答えて

3

あなたのページにprint button extensionを含める必要があると思います。 the docsから

:関連のアセットファイルは、あなたの場合には欠落している可能性があり、同様にExcelなどの他の問題については

//cdn.datatables.net/buttons/1.2.1/js/buttons.print.min.js 

These buttons are not part of the core library, but rather are individual files that can be included as you require. For example you may with to provide HTML5 file export buttons but not Flash export buttons. This simply ensures that only the code you require is delivered to the end user.

+0

これは、dataTables.buttons.min.jsとCSSファイルをページに含める理由です。または、どのように含める必要がありますか? –

+0

表示されているエラーメッセージが正しいクラスから来ているため、正しく挿入しました(クラス[here](https://github.com/DataTables/Buttons/blob/3c444b63fd05733d9c8e03ec0571c20d4af6d542/js/dataTables.buttonsを参照)。 js#L783))。この行にブレークポイントを置いて、そこで '_dtButtons'コレクションの内容を確認することができます。 クラスを初期化するために使用するコード全体と必要なものを投稿してください。 – born4new

+0

あなたのヒントをありがとう、born4new。このエラーは、「印刷」を含まないオブジェクトの選択「印刷」が失敗した場合に発生します。オブジェクトの構造: オブジェクト{コレクション:オブジェクト} コレクション:オブジェクト コピー:(B) CSV:(B) エクセル:(B) PAGELENGTH:(A) PDF: (a、b) __proto__:オブジェクト ここで私の明らかな質問は:なぜここに「印刷」がないのですか? –