Ruby on rails 3 Rails表单提交了多次,但没有';我不知道为什么

Ruby on rails 3 Rails表单提交了多次,但没有';我不知道为什么,ruby-on-rails-3,Ruby On Rails 3,我的表格如下: <%= form_for(:session, :url => sessions_path, :remote => true, :html => {:id => 'login_form'}) do |f| %> <div class="formRow"> <%= f.label :email %><br> <%= f.text_field :email,

我的表格如下:

<%= form_for(:session, :url => sessions_path, :remote => true, :html => {:id => 'login_form'}) do |f| %>
    <div class="formRow">
        <%= f.label :email      %><br>
        <%= f.text_field :email, :value => (@email if @email) %>
    </div>
    <div class="formRow">
        <%= f.label :password      %><br>
        <%= f.password_field :password %>
    </div>
    <div class="formRow small">
        <%= link_to "I forgot my password",'#' %>       
    </div>
    <div class="formRow">
            <%= f.submit signin_button_text, :class => "button-big left" %>
    </div>
<% end %>
以下是新的.js文件:

$('#login_form').replaceWith("<%=escape_javascript(render 'login_form')%>");
if($('.flash-block').length ==0) {
$('#login_form').before("<div class='flash-block error'><span><%=escape_javascript(flash[:error])%></span></div>");
                            }
$('login#u form')。替换为(“”);
如果($('.flash块')。长度==0){
$('login#u form')。在(“”)之前;
}
出于某种原因,如果表单提交时出现错误,它会循环四次

我不明白为什么


代码中是否存在导致此循环的内容?

我假设您正在使用jquery。这通常发生在调用不完整或出现某种错误且您尚未刷新页面时。试着这样做:

<script type="text/javascript">
$('#login_form').submit(function() {
        $(this).unbind('submit').submit();
       });
</script>

$('#登录表单')。提交(函数(){
$(this).unbind('submit').submit();
});

我使用的是Fancybox,没有在iframe中打开它。因此,我两次加载jquery库,因此当我提交表单时,我有多次提交

有一次我在iframe中打开Fancybox,它只提交了一次

<script type="text/javascript">
$('#login_form').submit(function() {
        $(this).unbind('submit').submit();
       });
</script>