2012-01-27 39 views
0

在我的Rails 3應用程序我有一個簡單的形式,如:Rails中的Ajax遠程形式3

<%= form_tag({:controller => "activity", :action => "record"}, :method => "post", :remote => true, :class => "myform") do %> 
    <%= hidden_field_tag 'name', 'Jack' %> 
<% end %> 

我的控制器:(activity_controller.rb)

def record 
#...something 
respond_to |format| 
    format.js   # app/views/activity/record.js.erb 
end 
end 

在record.js.erb:

alert("hello"); 

當我試圖與提交使用jQuery的形式,從螢火蟲控制檯:

$('.myform').submit(); 

表單通常會發布帖子請求,但控制器不呈現record.js。

重定向到本地主機/活動/記錄。

我想我的表單有什麼問題..

你能發現問題嗎?

+1

你的form_tag看起來不錯。但是可以肯定的是,你的佈局中是否包含了rails.js庫和'csrf_meta_tag'幫手?這是一個非常常見的錯誤,你沒有提到它。 – DanneManne 2012-01-27 01:26:58

+0

固定! csrf_meta_tag是好的.. rails.js是問題。感謝Danne! – Lamp 2012-01-27 01:47:05

+0

太棒了!然後,我只需添加一個答案,以便將問題標記爲已回答:) – DanneManne 2012-01-27 02:06:53

回答

0

確保您的佈局中包含rails.jscsrf_meta_tag助手。這是一個非常普遍的錯誤。