Rails引导模式窗体复选框不起作用

时间:2018-08-04 18:26:16

标签: jquery ruby-on-rails bootstrap-modal

嘿,我正在尝试获取一种新的开机自检表格,以在引导程序模式下工作。我一切正常,但复选框输入未切换。它们将填充为帖子模型中默认设置的值,并且单击时无法更改。

<%= bootstrap_form_for( @post, 
                        url: council_posts_path(@council, @post)) do |f| %>

    <%= f.text_field  :title,
                  placeholder: 'Post Title', 
                  class: 'form-control',
                  required: 'true' %>

    <%= f.text_area   :content,
                  placeholder: 'Post Content', 
                  class: 'form-control',
                  required: 'true' %>

    <%= f.check_box   :motion %>

    <%= f.check_box   :closed %>

    <%= f.submit 'Post to Council', id:' modal-submit', class: 'btn sign-up-button' %>
<% end %>

将其渲染为标准模式

<div  class="modal newModal" 
  tabindex="-1" 
  role="dialog" 
  aria-labelledby="myModalLabel">
   <div class="modal-dialog modal-lg" role="document">
     <div class="modal-content modal-posts">
       <div class="new-modal-header">
         <span class="posted-by"></span>
         <button type="button" 
            class="close" 
            data-dismiss="modal" 
            aria-label="Close">
             <span aria-hidden="true">&times;</span>
         </button>
       </div>
       <div class="modal-body">
         <div class="new-loaded-data">
           <%= render 'posts/new'%>
         </div><!-- loaded-data -->
      </div><!-- modal-body -->
    </div>
  </div>
</div>

然后我用javascript渲染模态。我还必须使用javascript提交表单。

$(document).on('turbolinks:load', function() {
  $("body").on( "click", "#new_post", function(event) {
    event.preventDefault();
    $('.newModal').modal('show');
  });
});

$(document).on('turbolinks:load', function() {
  $('#modal-submit').click(function () {
    $(this.form).submit();
    $('#newModal').modal('hide');
  });
});

除了:motion和:closed复选框输入之外,所有其他功能均正常工作。它们只是保持设置为默认值。当我将表单放在自己的页面上时,表单就可以使用,但是我认为将表单置于模式中会很好。距离它也同样起作用。

更新:我尝试将输入标签放入模式中。

<input type="checkbox"> 

如果该复选框放置在表单外部,则起作用,但如果在表单内部,它将中断。不知道这是否有助于找出问题所在。

0 个答案:

没有答案