提交按钮在模态对话框中的simple_form中不起作用

use*_*906 2 jquery ruby-on-rails modal-dialog form-submit twitter-bootstrap

最近我完成了一个工作正常的Rails应用程序,但后来我尝试切换到Unicorn服务器以利用工作进程.我部署了它并且有些东西坏了所以我回到了旧的Webrick服务器,但是顺便说一下,因为当我尝试再次部署它时,我在Bootstrap的模态中提交的表单按钮没有用.点击时他们什么也没做.请注意,这仅适用于引导模式内的表单提交按钮.

以下是一个表单的代码示例:

<div>
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 class="text-center">Nuevo Usuario</h3>
<div class="modal-body">
    <%= simple_form_for(@user) do |f| %>
    <%= f.error_notification %>
    <%= display_base_errors resource %>
    <%= f.input :name, :autofocus => true, :label => false, :placeholder => 'Nombre', :input_html => { :class => "input-block-level" } %>
    <%= f.input :email, :label => false, :placeholder => 'Email', :input_html => { :class => "input-block-level" } %>
    <%= f.input :role_ids, :collection => Role.all, :label => false, :prompt => "Selecciona un rol", :input_html => { :class => "input-block-level" } %>
</div>
<div class="modal-footer">
      <%= f.button :submit, "Crear", :class => 'btn-info'  %>
    <% end %>
    <a href="#" class="btn" data-dismiss="modal">Cerrar</a>
</div>
Run Code Online (Sandbox Code Playgroud)

这是通过一个div内的AJAX调用的,例如:

<div id="user-modal" class="modal hide fade modal-medium"></div>
Run Code Online (Sandbox Code Playgroud)

我看了每一个解决方案,一无所获.有人能帮我吗?它是一个带有bootstrap 2.3的Rails 3.2应用程序和用于表单的simple_form gem.

编辑:我最近发现这只发生在Chrome和Firefox中,但在Safari中工作得很好

f4d*_*der 6

我有同样的问题.在用firebug进行一些分析之后,我发现它不起作用的原因是浏览器会自动渲染标记,在我们的情况下过早.

如何解决它非常 简单,移动<%= simple_form_for(@user)do | f | %>到开头,如:

<%= simple_form_for(@user) do |f| %>    
<div>
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 class="text-center">Nuevo Usuario</h3>
    <div class="modal-body">

        <%= f.error_notification %>
        <%= display_base_errors resource %>
        <%= f.input :name, :autofocus => true, :label => false, :placeholder => 'Nombre', :input_html => { :class => "input-block-level" } %>
        <%= f.input :email, :label => false, :placeholder => 'Email', :input_html => { :class => "input-block-level" } %>
        <%= f.input :role_ids, :collection => Role.all, :label => false, :prompt => "Selecciona un rol", :input_html => { :class => "input-block-level" } %>
    </div>
    <div class="modal-footer">
          <%= f.button :submit, "Crear", :class => 'btn-info'  %>
        <% end %>
        <a href="#" class="btn" data-dismiss="modal">Cerrar</a>
    </div>
Run Code Online (Sandbox Code Playgroud)