2010-10-12 64 views
0

我有以下形式在我的Rails應用程序:將Rails表單轉換爲AJAX表單的簡單方法?

<% form_tag password_resets_path, :id => 'recoverPasswordForm' do %> 
    <label for="passwordRecoveryEmailAddress">Email Address:</label>&nbsp; 
    <%= text_field_tag "passwordRecoveryEmailAddress" %> 
    <%= submit_tag 'Recover' %> 

    <br /> 

    <div id="forgotPasswordLoginLinkContainer"> 
    <a id="forgotPasswordLoginLink" href="/login">Login Instead</a> 
    </div> 
<% end %> 

當表單提交,頁面必須重新加載。我想將這個表單輕鬆地轉換成AJAX表單,這樣表單就可以通過AJAX提交,並且頁面重新加載也不會發生。

我可以很容易地使用jQuery來掛鉤到.submit()函數中。但是,我很好奇:Rails是否提供了一些簡單的方法將任何給定的表單轉換爲AJAX表單?或者,什麼是最簡單(但優雅)的方式?也許像

<% form_tag password_resets_path, :id => 'recoverPasswordForm', :ajax => true do %> 

我用Rails 2

回答

2

是的,你接近你的猜測。 Rails 3允許你做form_tag ..., :remote => true讓表單在AJAX可用的情況下使用AJAX。

請參閱http://railsapi.com/doc/rails-v3.0.0/classes/ActionView/Helpers/FormTagHelper.html#M002483

+0

有沒有Rails 2的方法?不幸的是,我不會在這個項目中使用3。 – 2010-10-12 17:41:49

+3

在這種情況下使用'form_remote_tag' - http://railsapi.com/doc/rails-v2.3.8/classes/ActionView/Helpers/PrototypeHelper.html#M002318 – 2010-10-12 17:51:06

+0

不錯!我會試試這個。謝謝! – 2010-10-12 17:55:09

相關問題