2013-11-25 75 views
0

我有一個使用複選框和文本區域的窗體。當我提交表單時,它會提交複選框的值(1或0),而不是來自文本區域的數據。以下是我的表格。在多個字段上使用相同值的軌道形式

 <%= form_for(:add_kids) do |kid|%> 
       <div class="kidsname"> 
        <%= kid.text_field :first_name, placeholder: "First", class: "name" %> 
        <%= kid.text_field :last_name, placeholder: "Last", class: "name" %> 
       </div> 
      <br> 
       <div class="allergens"> 
       <h4>Allergens/Asthma:</h4> 
        <div class="allergens-list"> 
         <ul> 
          <li> 
           <%= kid.check_box :soy %> 
           <%= kid.label :soy %> 
           <%= kid.check_box :peanuts %> 
           <%= kid.label :peanuts %> 
           <%= kid.check_box :wheat %> 
           <%= kid.label :wheat %> 
          </li> 
          <li> 
           <%= kid.check_box :milk %> 
           <%= kid.label :milk %> 
           <%= kid.check_box :nuts %> 
           <%= kid.label :nuts, "Tree Nuts" %> 
           <%= kid.check_box :eggs %> 
           <%= kid.label :eggs %> 
          </li> 
          <li class="otherNeeds"> 
           <%= kid.check_box :other, {class: "other"} %> 
           <%= kid.label :other, "Other Needs" %> 
           <div class="concernsContainer"> 
            <h3>Please type your kid's needs or concerns</h3> 
            <div class="concernsBox"> 
             <%= kid.text_area :other, placeholder: "Type here...", maxlength: 500, disabled: 'disabled' %> 
            </div> 
           </div> 
          </li> 
         </ul> 
        </div> 
       </div> 
     <% end %> 
+0

這裏沒有問題,只有一個聲明... – tyler

+0

爲什麼textarea被禁用? – Hesham

+0

直到jQuery onclick事件纔會被禁用。問題是,爲什麼它從複選框而不是從textarea寫入值?謝謝 –

回答

0

您是否嘗試過form_for api語法?

<%= form_for :person do |f| %> 
    First name: <%= f.text_field :first_name %><br /> 
    Last name : <%= f.text_field :last_name %><br /> 
    Biography : <%= f.text_area :biography %><br /> 
    Admin? : <%= f.check_box :admin %><br /> 
<%= f.submit %> 
<% end %> 
1

你既有check_box和textarea的與同一屬性 - :other 的屬性傳遞根據您的控件的屬性name到Rails應用程序,所以如果你檢查textarea的名稱和複選框的名字,你會發現它們是一樣的。

我假設你想得到兩個屬性,所以你需要在那裏指定不同的名字。無論如何,更多關於你想要在params中得到什麼的細節將會非常有幫助

相關問題