我正嘗試使用rails 5和jQuery創建一個動態的嵌套表單。我可以輕鬆地刪除嵌套字段,但是很難將其添加回來。我_project_field.html.erb
如下:在Rails中通過jQuery呈現表格
<%= form_for @project do |project| %>
<%= project.label :description, class: 'col-md-2' %>
<%= project.text_field :description, class: 'col-md-8' %>
<%= project.label :lot, class: 'col-md-2' %>
<%= project.text_field :lot, class: 'col-md-8' %>
<%= project.fields_for :tests do |test| %>
<%= render 'test_fields', :f => test %>
<% end %>
<%= link_to "Add Test", 'javascript:void(0);', class: "add-link col-md-2" %>
<%= project.hidden_field :user_id, value: current_user.id %>
<%= project.submit "Submit", class: 'btn btn-primary col-md-2 col-md-offset-3' %>
<% end %>
和裏面是_test_fields
形式,
<div class="form-fields">
<div class="row">
<%= f.label :test_method_id, "Test Method", class: 'col-md-2' %>
<div class="col-md-6 method-select">
<%= f.select(:test_method_id, options_for_select(@methods, selected: f.object.test_method_id), include_blank: true) %>
</div>
<%= link_to "Remove", 'javascript:void(0);', class: "remove-link col-md-2" %>
</div>
</div>
當我點擊「添加測試」的鏈接,它只是呈現字符串「<%= j的渲染'test_fields',:f => test%>「。代碼如下:
// assets/javascript/forms.js
$(".add-link").click(function() {
console.log("add link");
var html = '<%= j render \'test_fields\', :f => test %>'
$(this).parent().append(html);
})
我該如何去添加字段partials到嵌套窗體?
此流程似乎適用於我在Rails 5中使用,謝謝! – Andy