从Rails Controller调用JS方法

时间:2014-06-04 08:55:43

标签: javascript ruby-on-rails ruby ruby-on-rails-4

所以这是我的控制器功能。

def fb_close
  current_user.update_user_points(SHARE_POINT_ONE, message, current_user.id, 0) if params[:post_id].present?
  respond_to do |format|
    format.js { render :js => "my_function();" }
  end
end

我试图在同一页面上返回一个名为my_function的js函数。我收到了ActionController::UnknownFormat

这样的错误

我想知道我哪里错了。请纠正我。

我有一个名为fb_close.html.erb的文件我可以调用该文件..有什么方法可以将它与js函数链接

1 个答案:

答案 0 :(得分:1)

您最好将my_function的代码放在格式为js的单独文件中,并将其称为format.js { render 'your_file_name' }

respond_to do |format|
  format.js { render 'your_file_name' }
end

您必须创建一个类似fb_close.js.erb的文件,并将my_function的代码放入其中并像这样调用

respond_to do |format|
format.js { render 'fb_close' }
end