2015-11-29 2 views
1

У меня есть следующий .erb файл:Rails .erb файл рендеринга в неправильном порядке

<div class="table-responsive"> 
    <table class="table table-striped"> 
     <thead> 
     <tr> 
      <th>Name</th> 
      <th>Email</th> 
      <th>Delete</th> 
     </tr> 
     </thead> 
     <tbody> 
     <%= form_for @group, html: { id: 'form' } do |group_form| %> 
      <div id="group-members"> 
      <%= group_form.fields_for :group_members do |group_member_fields| %> 
       <tr> 
        <td><%= group_member_fields.text_field :name , class: 'form-control' %></td> 
        <td><%= group_member_fields.email_field :email, class: 'form-control' %></td> 
        <td><%= group_member_fields.check_box :_destroy %></td> 
       </tr> 
      <% end %> 
      </div> 
     </tbody> 
    </table> 
</div> 
<%= group_form.submit 'Apply', class: "btn btn-success btn-sm pull-right" %> 
<% end %> <!-- End of form --> 
<%= submit_tag 'Add member', type: 'button', class: "btn btn-primary btn-md", id: "add-member-to-group-btn" %> 

div чуть ниже form_for с id из group-members визуализируется пусто и в неправильном положении. Элементы в fields_for все еще отображаются правильно, только не внутри group-members div.

enter image description here

ответ

2

только <tr> элементы допускаются как дети в <tbody>. Вы должны переместить таблицу в форму. Затем вы можете переместить атрибут id="group-members" на другой элемент, такой как <form>,, <table>.

1

В HTML, если вы хотите использовать тег <div> в <table>, он должен быть в <th> или <td>. Для получения дополнительной информации, пожалуйста, зарегистрируйтесь здесь:

https://css-tricks.com/using-divs-inside-tables/

Смежные вопросы