1

我们曾经在我们的 Rails 2.3.5 应用程序中有一个表单,如下所示,它运行良好

<% form_for @quote do |f| -%>
    <%= f.text_field :length %>
    <%= f.text_field :tax, :readonly => true %>
    <%= submit_to_remote 'commit', 'Calculate', :url => { :action => 'create' } %>
    <%= submit_tag 'Submit' %>  
<% end %>

基本上,“计算”按钮会将表单作为 XMLHttpRequest 请求提交,而“提交”按钮将执行简单的 POST。是否可以在 Rails 3 应用程序中执行此操作?

4

1 回答 1

3

添加:remote => true到您的form_for选项以生成带有 的表单data-remote="true",Rail 的Unobtrusive JavaScript将通过 AJAX 提交该表单。

<% form_for @quote, :remote => true do |f| %>
    <%= f.text_field :length %>
    <%= f.text_field :tax, :readonly => true %>
    <%= submit_tag 'Submit' %>  
<% end %>

如果 JavaScript 可用,表单将通过 AJAX 提交,否则回退到常规表单回发。

于 2012-08-02T18:48:42.253 回答