javascript - 如何调用 .js.erb 文件而不是 .rjs 文件

标签 javascript ruby-on-rails ruby ruby-on-rails-3

我正在努力从 Prototype 迁移到 jQuery,我们还必须尽可能删除 .rjs 文件。这里有一个问题:

我在 app/views/results 文件夹中找到了 update_overall_comment.rjs 文件:

page.replace 'overall_comment', :partial => 'results/marker/overall_comment', :locals =>  {:result => @result}
page.visual_effect(:highlight, 'overall_comment_text_area', :startcolor => '#BDFCC9')

app/views/results/markers 文件夹中的 _overall_comment.html.erb 文件:

<div id="overall_comment">
          <div id="overall_comment_edit">
            <%= form_for @result,
              :remote => true,
              :url => { :action => 'update_overall_comment', :id => @result.id } do |f| %>
              <%= f.text_area :overall_comment,
                :cols => 50,
                :rows => 5,
                :id => 'overall_comment_text_area',
                :onkeydown => "$('overall_comment_submit').enable();" %>
           <div>
             <%= f.submit t(:save_changes),
               :disable_with => I18n.t('working'),
               :disabled => true,
               :id => "overall_comment_submit"%>
           </div>
          <% end %>
    </div>
</div>

以及app/controllers文件夹中的results.controller.rb文件(我只是展示相关函数):

def update_overall_comment
  @result = Result.find(params[:id])
  @result.overall_comment = params[:result][:overall_comment]
  @result.save
end

我想了解的第一件事是如何将 .rjs 文件转换为 .js.erb。我删除了它并创建了 update_overall_comment.js.erb (在同一文件夹中),其中仅包含 console.log('...'),但我从未见过调用的 console.log。

你有什么想法吗?

提前谢谢您。

最佳答案

update_overall_comment.rjs重命名为update_overall_comment.js.erb

然后在此文件中:

$('#overall_comment').html("<%= j(render 'results/marker/overall_comment') %>");
$('#overall_comment_text_area').effect("highlight", { color: "#BDFCC9" }, 3000);

附:不确定突出显示,也为了验证 js.erb 文件是否被调用/渲染,我使用 alert('something here'); 而不是 console('...') ;,但是为了测试 ajax 调用,这应该没有太大区别。

关于javascript - 如何调用 .js.erb 文件而不是 .rjs 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20629067/

相关文章:

javascript - 使用映射转换属性失败出现意外 token 错误

javascript - 如何将插入图像按钮添加到 CKEditor?

javascript - jQuery DataTable - 隐藏列问题

mysql - Rails Query 选择最新记录的最佳方法

ruby-on-rails - 我不断收到 "Not found. Authentication passthru"用于使用 Devise 连接登录的 Facebook - 需要调试建议

ruby-on-rails - Rspec 中回形针内容类型验证失败

javascript - 在 EaselJs 中创建橡皮擦 - 下一步

javascript - $and with sub $and 在 mongo 和 mongoose 中没有产生预期结果

ruby - 在 JRuby 中使用 Solr 和 Sunspot 的低级错误

ruby - 什么时候用undef_method,什么时候用remove_method?