5

当用户单击两次或单击两次提交时,我试图防止表单被“双重发布”。

我看过一些关于此的帖子,但他们本身并没有解决这个问题。我似乎无法让下面的内容停止双发,而且我感觉它与远程 => true 相关(使用 ajax 在页面上显示内容)。

下面是我的表格:

    <%= form_for([@posts, @comment], :remote => true) do |f| %>

      <%= f.text_field :comment %>

      <%= f.submit "Submit", class: "btn btn-large btn-primary", :style => 'display: none;', :disable_with => '' %>

    <% end %>

任何建议都会很棒。谢谢!

4

2 回答 2

10

使用 disable_with 选项

<%= submit_tag :submit, :id => 'submit_button', :value => "Create!", disable_with: "Creating..." %>
于 2012-10-03T18:18:01.843 回答
10

另一个答案对我不起作用——我相信它来自 Rails 2 时代。根据文档disable_with属性应该添加到data属性中,如下所示:

<%= submit_tag "Complete sale", data: { disable_with: "Please wait..." } %>
于 2015-12-10T00:20:03.027 回答