2015-05-04 46 views
3

渲染视图中的部分我有一个“项目”的形式为部分。我试图使用jQuery呈现局部当用户点击一个按钮:Ruby on Rails的:如何通过jQuery

$('.projects').append("<%= render partial: 'projects/project') %>").html_safe 

但是,使用上面的代码是从字面上呈现“<%=渲染部分:‘项目/工程’)%>”上页面而不是实际的部分。

+1

我觉得你的JavaScript文件没有在它的'erb'扩展,如果是则来自'file.js'重命名为'file.js.erb' –

+0

这是什么文件,反正叫什么名字?因为它看起来像js,但是你添加了'.html_safe'这是红宝石,并且你说表单部分,所以idk。 –

回答

4

我认为将您的文件扩展名从xxx.js重命名为xxx.js.erb可能会解决您的问题。

+0

我认为伯尼是正确的。如果文件以erb结尾,那么rails将呈现视图。如果不是,那么它只是将其视为任何其他静态文件。 –

1

尝试:

$('.projects').append("<%= j render partial: 'projects/project') %>"); 

jescape_javascript别名。

escape_javascript助手查看文档。

2

试试这个:

$('#projects').html('<%= escape_javascript render 'projects/project' %>'); 

注:作为Bernie Chiu建议您需要的文件扩展名从xxx.js更改为xxx.js.erb