将 Javascript 库 (jsPDF) 与 Ruby-on-Rails 视图一起使用
Using Javascript library(jsPDF) with Ruby-on-Rails views
我是 ROR、JS 和整个网络技术的新手。我正在尝试构建一个简单的 ROR 应用程序,我想在客户端生成一个 PDF 文件。我发现 this javascript 库适合我的目的。我使用 bower
安装了这个依赖项。现在我不确定如何在我的 views
中使用这个库?
我试过在互联网上搜索,但找不到任何结论。
我正在使用 Rails 版本 4。
您必须使用 javascript_include_tag
才能将其包含在您的视图中。参考文献link
从 GIT 存储库下载 zip。提取 jspdf.js 文件并将其放入 vendor/assets/javascripts
。然后使用上述方法将其包含在特定视图中或在 application.js 中要求它,如:
//= require jspdf
从 GIT 存储库下载 zip。解压 zip 文件有一个文件夹 examples.
直接查看basic.html
的代码
您需要将此 (jspdf.debug.js) (dist/jspdf.debug.js) 文件添加到您的 app/assets/javascripts
在 application.js
中需要此文件
那么在你看来这样试试......
<a href="#" class="button">Run Code</a>
<script>
$(function() {
$('.button').on('click',function(){
var name = prompt('What is your name?');
var multiplier = prompt('Enter a number:');
multiplier = parseInt(multiplier);
var doc = new jsPDF();
doc.setFontSize(22);
doc.text(20, 20, 'Questions');
doc.setFontSize(16);
doc.text(20, 30, 'This belongs to: ' + name);
for(var i = 1; i <= 12; i ++) {
doc.text(20, 30 + (i * 10), i + ' x ' + multiplier + ' = ___');
}
doc.addPage();
doc.setFontSize(22);
doc.text(20, 20, 'Answers');
doc.setFontSize(16);
for (i = 1; i <= 12; i ++) {
doc.text(20, 30 + (i * 10), i + ' x ' + multiplier + ' = ' + (i * multiplier));
}
doc.save('Test.pdf');
});
});
</script>
我是 ROR、JS 和整个网络技术的新手。我正在尝试构建一个简单的 ROR 应用程序,我想在客户端生成一个 PDF 文件。我发现 this javascript 库适合我的目的。我使用 bower
安装了这个依赖项。现在我不确定如何在我的 views
中使用这个库?
我试过在互联网上搜索,但找不到任何结论。
我正在使用 Rails 版本 4。
您必须使用 javascript_include_tag
才能将其包含在您的视图中。参考文献link
从 GIT 存储库下载 zip。提取 jspdf.js 文件并将其放入 vendor/assets/javascripts
。然后使用上述方法将其包含在特定视图中或在 application.js 中要求它,如:
//= require jspdf
从 GIT 存储库下载 zip。解压 zip 文件有一个文件夹 examples.
直接查看basic.html
的代码您需要将此 (jspdf.debug.js) (dist/jspdf.debug.js) 文件添加到您的 app/assets/javascripts
在 application.js
中需要此文件那么在你看来这样试试......
<a href="#" class="button">Run Code</a>
<script>
$(function() {
$('.button').on('click',function(){
var name = prompt('What is your name?');
var multiplier = prompt('Enter a number:');
multiplier = parseInt(multiplier);
var doc = new jsPDF();
doc.setFontSize(22);
doc.text(20, 20, 'Questions');
doc.setFontSize(16);
doc.text(20, 30, 'This belongs to: ' + name);
for(var i = 1; i <= 12; i ++) {
doc.text(20, 30 + (i * 10), i + ' x ' + multiplier + ' = ___');
}
doc.addPage();
doc.setFontSize(22);
doc.text(20, 20, 'Answers');
doc.setFontSize(16);
for (i = 1; i <= 12; i ++) {
doc.text(20, 30 + (i * 10), i + ' x ' + multiplier + ' = ' + (i * multiplier));
}
doc.save('Test.pdf');
});
});
</script>