2011-01-25 27 views
2

我有方法在我的控制器:導軌3的form_for AJAX調用

def work_here 
@company = Company.find(params[:id]) 
current_user.work_apply(current_user, @company) 
redirect_to company_path 
end 

在我的視圖:

<%= render 'companies/work_form' if signed_in? %> 

_work_form.html.erb:

<%= form_for company, :remote => true, :url => { :controller => "companies", :action => "work_here" } do |f| %> 
<%= f.hidden_field :id, :value => company.id %> 
<%= f.submit "I working here" %> 

<%端% >

而且我有一個work_here.js.erb文件:

$("#work_at_form").html("<%= escape_javascript("render('companies/works')") %>") 

但我的形式工作沒有Ajax請求(在其它頁面的AJAX叉罰款),我js.erb文件從不使用。 任何人都可以給我建議嗎? 謝謝。

+1

是否所有JavaScript文件都包含在該特定頁面中?同時檢查生成的html在

標籤上是否具有正確的屬性 – 2011-01-25 08:13:21

+0

是的,在這種情況下一切正常。 – 2011-01-25 08:42:36

回答

5

無法讀取work_here.js.erb,因爲您永遠不會調用它。重定向是通用的。當請求是js格式時呈現它。

def work_here 
@company = Company.find(params[:id]) 
current_user.work_apply(current_user, @company) 
respond_to do |format| 
    format.html { redirect_to company_path } 
    format.js { render } 
end 
end