在RubyonRails视图中使用Javascript库(jsPDF)

在RubyonRails视图中使用Javascript库(jsPDF),javascript,ruby-on-rails,ruby,web-applications,jspdf,Javascript,Ruby On Rails,Ruby,Web Applications,Jspdf,我对ROR、JS和web技术都是新手。我正在尝试构建一个简单的ROR应用程序,我想在客户端生成一个PDF文件。我发现javascript库适合我的用途。我使用bower安装了此Dependency。现在我不确定如何在我的视图中使用此库? 我试着在网上搜索,但没有找到任何结论 我使用的是Rails版本4。您必须使用javascript\u include\u标记才能将其包含在视图中。参考文献 从GIT repos下载zip。提取并将jspdf.js文件放入vendor/assets/javascr

我对ROR、JS和web技术都是新手。我正在尝试构建一个简单的ROR应用程序,我想在客户端生成一个PDF文件。我发现javascript库适合我的用途。我使用
bower
安装了此Dependency。现在我不确定如何在我的
视图中使用此库?
我试着在网上搜索,但没有找到任何结论


我使用的是Rails版本4。

您必须使用
javascript\u include\u标记
才能将其包含在视图中。参考文献


从GIT repos下载zip。提取并将jspdf.js文件放入
vendor/assets/javascripts
中。然后使用上述方法将其包含在特定视图中,或在application.js中要求它,如:

//= require jspdf

您必须使用
javascript\u include\u标记
将其包含在视图中。参考文献


从GIT repos下载zip。提取并将jspdf.js文件放入
vendor/assets/javascripts
中。然后使用上述方法将其包含在特定视图中,或在application.js中要求它,如:

//= require jspdf

您必须使用
javascript\u include\u标记
将其包含在视图中。参考文献


从GIT repos下载zip。提取并将jspdf.js文件放入
vendor/assets/javascripts
中。然后使用上述方法将其包含在特定视图中,或在application.js中要求它,如:

//= require jspdf

您必须使用
javascript\u include\u标记
将其包含在视图中。参考文献


从GIT repos下载zip。提取并将jspdf.js文件放入
vendor/assets/javascripts
中。然后使用上述方法将其包含在特定视图中,或在application.js中要求它,如:

//= require jspdf

从GIT repos下载zip。解压缩zip文件有一个文件夹示例

只需查看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>

$(函数(){
$('.button')。在('click',function(){
var name=prompt('你叫什么名字?');
var乘数=提示符('输入一个数字:');
乘数=parseInt(乘数);
var doc=new jsPDF();
文件setFontSize(22);
文件文本(20,20,“问题”);
文件setFontSize(16);
文件文本(20,30,'这属于:'+名称);

对于(var i=1;i从GIT repos下载zip文件。解压缩zip文件有一个文件夹示例

只需查看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>

$(函数(){
$('.button')。在('click',function(){
var name=prompt('你叫什么名字?');
var乘数=提示符('输入一个数字:');
乘数=parseInt(乘数);
var doc=new jsPDF();
文件setFontSize(22);
文件文本(20,20,“问题”);
文件setFontSize(16);
文件文本(20,30,'这属于:'+名称);

对于(var i=1;i从GIT repos下载zip文件。解压缩zip文件有一个文件夹示例

只需查看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>

$(函数(){
$('.button')。在('click',function(){
var name=prompt('你叫什么名字?');
var乘数=提示符('输入一个数字:');
乘数=parseInt(乘数);
var doc=new jsPDF();
文件setFontSize(22);
文件文本(20,20,“问题”);
文件setFontSize(16);
文件文本(20,30,'这属于:'+名称);

对于(var i=1;i从GIT repos下载zip文件。解压缩zip文件有一个文件夹示例

只需查看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>

$(函数(){
$('.button')。在('click',function(){
var name=prompt('你叫什么名字?');
var乘数=提示符('输入一个数字:');
乘数=parseInt(乘数);
var doc=new jsPDF();
文件setFontSize(22);
文件文本(20,20,“问题”);
文件setFontSize(16);
文件文本(20,30,'这属于:'+名称);

对于(var i=1;我对此表示感谢..我在开发工具中得到一个错误,说
demoUserInput()
函数未定义!-@AbhishekBansal:我更新了我的答案,请检查。希望这会对您有所帮助。谢谢..我在开发工具中得到一个错误,说
demoUserInput())
函数未定义!@AbhishekBansal:我更新了我的答案,请检查。希望这能对您有所帮助。谢谢。我在开发工具中发现一个错误,它是
demoUserInput()
函数未定义!@AbhishekBansal:我更新了我的答案,请检查。希望这能对您有所帮助。谢谢。我在开发工具中发现一个错误,它是
demoUserInput()
函数未定义!@AbhishekBansal:我更新了我的答案,请检查。希望这会对您有所帮助。谢谢。但我对后面的部分感到困惑。接下来该怎么办?使用此代码
/=require jspdf
将使您的JS文件在全球范围内可用。之后,您可以按照Github中给出的使用说明进行操作例如:
var doc=new jsPDF();
所以我试着按照