У меня проблема с рендерингом элемента в jquery / rails.
Я хотел бы сделать что-то вроде этого:
Когда пользователь нажимает кнопку «+», другое поле с выбранным ингредиентом должно отображаться ниже поля по умолчанию (поскольку напиток может иметьмного ингредиентов, и я не хочу указывать сумму).
Я не могу понять это, поэтому я должен попросить о помощи.
просмотров / напитков / new.html.erb
<%= form_for @drink do |f| %>
<div class="form-group">
<%= f.label :name %><br />
<%= f.text_field :name, class:'form-control' %><br />
</div>
<div class="form-group">
<%= f.label :category %><br />
<%= f.select :category_id, Category.all.collect {|x| [x.name, x.id]}, {:include_blank => 'Select One'}, class:'form-control' %><br /><br />
</div>
<div class="form-group", id: "add-ingredients">
<%= f.label :ingredient %><br />
<%= f.select :ingredient_id, Ingredient.all.collect {|x| [x.name, x.id]}, {:include_blank => 'Select Few'}, class:'form-control' %><%= f.button "+", class:'btn btn-primary', id: 'btn-ingredients' %><br />
</div>
<div class="form-group">
<%= f.label :preparation %><br />
<%= f.text_area :preparation, class:'form-control'%><br />
</div>
<%= f.submit "Submit", class:'btn btn-primary' %>
<%= link_to "Cancel", drinks_path, class:'btn btn-default' %>
<% end %>
application.js
$(document).ready(function(){
$('#btn-ingredients').click(function(){
$('#add-ingredients').append('<%= render("form-group") %>');
});
});
Я былпытаться много раз, и это может быть что-то действительно легко, но я новичок и не имею других идей.