2017-04-21 34 views
0

我在我的_form.html.erb代碼(它cuted)與格式化的HTML問題時,從阿賈克斯生成領域軌

<tbody> 
    <%= f.simple_fields_for :saleslines do |salesline| %> 
      <%= render 'salesline_fields',f: salesline %> 
     <%end%> 
    <td><%= link_to_add_fields "add button", f, :saleslines %></td> 

,然後應用助手:

module ApplicationHelper 
    def link_to_add_fields(name, f, association) 
    new_object = f.object.send(association).klass.new 
    id = new_object.object_id 
    fields = f.fields_for(association, new_object, child_index: id) do |salesline| 
    render(association.to_s.singularize + "_fields", f: salesline) 
end 
link_to(name, '#', class: "add_fields", data: {id: id, fields: fields.gsub("\n", "</td>")}) 
end 
end 

和_saleslines_fields。 html.erb - >

<tr><td>asdasd</td> 
<td class="state-1">111</td> 
<td class="state-2">222</td> 
<td>333</td> 
<td>asdasd</td></br> 
<td>asdasd</td></br> 
</tr> 

當_form生成時,所有字段都可以 - 有列和行,但是當我從產生的JavaScript/AJAX鏈接鱗次櫛比失去了從_saleslines_fields格式和所有列到單個第一列。請幫幫忙,我坐在它幾天...

回答

0

你的問題,我懷疑是在這條線的位置:

link_to(name, '#', class: "add_fields", data: {id: id, fields: fields.gsub("\n", "</td>")}) 

您在關閉TD爲每個新線底層,這是打破html。您可能希望簽出繭寶石https://github.com/nathanvda/cocoon。它使得通過AJAX添加關聯從長遠來看更容易。

0

對不起,我粘貼示例代碼我想測試。沒有這個效果是一樣的。