不使用js.erb从动作返回js代码

时间:2013-07-18 06:07:15

标签: ruby-on-rails

而不是:

  def edit
    @user = User.find params[:id]
    respond_to { |format| format.js }
  end

  #edit.js.erb
  // some js code

有没有办法在控制器的动作中做同样的事情:

  def edit
    @user = User.find params[:id]
    respond_to { |format| format.js /* some js code*/ }
  end

2 个答案:

答案 0 :(得分:1)

你可以写一些像这样的代码

format.js { render :js => "alert('Hello Rails');" }

另外

format.js { render :js => "window.location.replace('#{your_url(@object)}');" }

答案 1 :(得分:0)

respond_to :js

def edit
   respond_with { @user = User.find params[:id] }
end