我在确定如何在提交表单时禁用rails中的提交按钮时遇到一些麻烦。它在禁用javascript和'remote_form_for#submit'函数中的':disable_with'符号时工作正常,但在通过ajax提交时无法弄明白。有什么想法吗?使用rails 2.3.5和ruby 1.8.7。
答案 0 :(得分:6)
您可以在发出请求时隐藏提交按钮,并在请求运行时显示加载图像。例如,在form_remote_tag中:
<% form_remote_tag :url => "/some_url",
:loading => "$('submit_span').toggle(); $('loading_span').toggle();",
:complete => "$('submit_span').toggle(); $('loading_span').toggle();" do %>
-- FORM CONTENTS --
<span id="submit_span">
<%= submit_tag "Submit" %>
</span>
<span id = "loading_span" style = "display: none;">
<%= image_tag("loading.gif")%>
</span>
<% end %>
当请求完成(成功或失败)时,您取消隐藏提交并隐藏加载范围。
关于各种回调的更多文档:
http://api.rubyonrails.org/classes/ActionView/Helpers/PrototypeHelper.html#M002174