2017-05-03 108 views
0

如何調用關於表單的方法?調用控制器方法並返回變量以查看

我有3個radio按鈕,我想調用一個方法取決於哪個單選按鈕被選中。在調用之後,我必須將控制器的一個變量返回給視圖。

我該怎麼做?

我的做法:

我想用CSS做設計我的HTML。這就是爲什麼我還沒有使用的形式幫助的原因:

<div id="cx" class="cxs"> 
    <form> 
    <fieldset> 
     <label> 
     <input type="radio" id="cxId" name="checkBox"> ID 
     </label> 
     <label> 
     <input type="radio" id="cxName" name="checkBox"> Name 
     </label> 
     <label> 
     <input type="radio" id="cxArtikelnummer" name="checkBox"> Artikelnummer 
     </label> 
    </fieldset> 
    <button type="button" id="cxBtn">Ok</button> 
    </form> 
</div> 

在這裏,我想打電話給取決於哪個單選按鈕(由nameidartikelnummer顯示)檢查的方法。

我已經解決了stati,但選擇必須是動態的,我認爲這樣做的方法。

<% $i = 0 %> 
    <% $num = @title.count %> 
    <% @title.each do |row| %> 
    Name: <%= row["Name"] %> 
    Durchlauf: <%= $i %> <br> 
    <% $i += 1 %> 
<% end %> 
+0

是什麼'@ title'?它在哪裏初始化? –

+0

對不起,標題在我的控制器中初始化。 「@title = data_array」title是一個二維數組 –

+0

您可以將'name'設置爲您的'method_name',並且在選擇時可以使用'send(method_name.to_sym)'調用相應的方法。 –

回答

1

如果@title代表一個模型,其中有例如「AAA」字符串類型的字段,它可以有「ID」值,「名稱」的價值和「產品編號」,嘗試使用此:

<% @title.each do |row| %> 
     <% if row.aaa == "ID" %> 
      #code for ID option 
     <% elsif row.aaa == "Name" %> 
      #code for Name option 
     <% elsif row.aaa == "Artikelnummer %> 
      #code for Artikelnummer option 
     <% end %> 
<% end %> 

這是我的想法。告訴我它是否會幫助你。

但我認爲你可以在其中使用form_for helper和radio_button helper:checked選項和整個form_for你可以通過CSS設計每個<li class="sth"><%= f.radio_button "Name", checked: true%></li>,但我應該檢查這個解決方案是否正確。

RGDS, 瑪塔

+0

糟糕的是他試圖做一些事情,當單選按鈕被選中。所以並不完全是一個服務器端問題。 –

相關問題