【问题标题】:Rails: Submit form modal for confirming submissionRails:用于确认提交的提交表单模式
【发布时间】:2016-03-08 13:08:19
【问题描述】:

所以我有一个表单,当它被点击时需要有一个免责声明模式。这就像一个很长的免责声明,所以最好是在模式中而不是在表单页面上。因此,用户单击触发模式的表单上的按钮。然后从模式中,有一个“提交表单”按钮,它实际上会进行提交。

这怎么可能,因为按照我现在的方式,单击提交按钮时什么都不做。在这种情况下(从模式)是否可以进行正常的表单提交?我可以使用 javascript 来完成这项工作吗?

<%= form_for [:client, Reportapproval.new], :validate => true do |f| %>
  <div class="actions">
    <%= f.hidden_field :blah, :value => current_client.name %>
  </div>
  <div class="block-inline">
    <label>Blah Blah</label><br>
     <%= f.select :client... %>   
  </div>
  <%= f.text_field :client... %>
    <label>
      <%= f.hidden_field :client... %>
    </label>
  <div class="text-center">
      <button type="button" class="btn btn-success" data-toggle="modal" data-target="#client_disclaimer_modal">
        Request a report from this renter
      </button> <!--- This button opens the modal--->
  </div>

<!-- Disclaimer Modal -->
  <div class="modal fade" id="clent_disclaimer_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
    <div class="modal-dialog" role="document">
      <div class="modal-content">
        <div class="modal-header">
          <h4 class="modal-title" id="myModalLabel">Client Disclaimer Agreement</h4>
        </div>
        <div class="modal-body">
          <strong>NOTICE...<br>
        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
          <%= f.submit "Agree & Submit", class: 'btn btn-default' %>
        </div>
      </div>
    </div>
  </div>
</div> 
<br /> 
<% end %>

【问题讨论】:

    标签: ruby-on-rails ajax forms bootstrap-modal


    【解决方案1】:

    只要&lt;button type='submit'&gt;&lt;form&gt; 中,您上面提供的代码应该可以完美运行。确保控制模态的任何 JS 都不会将模态标记移动到 DOM 中的其他位置(即将它移动到 body 标记的直接后代)。

    【讨论】:

    • 所以在我的模态中,我通过 Rails 操作 &lt;%= f.submit "Agree &amp; Submit", class: 'btn btn-default' %&gt; 提交,这不起作用?
    • 它仍然应该工作。 f.submit 仍然会生成一个正确的提交按钮。您是否对此进行了测试并确认它不起作用?
    • 我按照上面的方式测试了它以及&lt;button type="submit" class="btn btn-default"&gt;Agree &amp; Submit&lt;/button&gt;没有bueno,当我点击提交时仍然什么都不做
    • 我什至尝试在模式中使用&lt;/form&gt; 关闭表单。还是不行。
    • 看看你答案的第二部分,我正在使用 twitter 引导模式,这会有所作为吗?
    【解决方案2】:

    我也花了很多时间弄清楚这一点:

    我是这样做的

    根据官方Rails Guides,可以通过:data选项使用自定义数据属性:

    <%= form.submit  'Submit Application', data: { confirm: "Are you sure?" } %>
    

    就是这样。

    我希望这会有所帮助

    【讨论】:

      【解决方案3】:

      您的代码中只是有一个错字。 :)

      将“clent_disclaimer_modal”更改为“client_disclaimer_modal”。使用此更新验证所有工作正常。

      【讨论】:

        猜你喜欢
        • 2018-06-12
        • 2011-09-23
        • 2016-10-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多