2011-09-08 12 views
47

नीचे दिए गए कोड के लिए मैं पास किए गए मान के साथ चयनित बॉक्स को रखना चाहता था।रेल select select_tag चयनित मूल्य

लेकिन यह काम नहीं करता:

@yrs =[2011,2010,2009,2008] 
<%= select_tag 'year', options_for_select([["Select" , "" ]] + @yrs.to_a,:selected=>2011) %> 

कृपया मुझे सलाह कैसे इसके बारे में जाने के लिए।

धन्यवाद

+0

तो @M तारिक अजीज द्वारा प्रदान की जवाब है, काम करता है, कृपया इसे स्वीकार करते हैं। –

उत्तर

82

:selected=> हिस्सा निकालें।

सिंटेक्स:

options_for_select(@options, @selected_options) 

उपयोग:

options_for_select(1..5, 3) # creates a range 1..5 , with 3 as selected by default 
5

बस स्पष्ट करने के लिए @M तारिक अजीज जवाब:

आपका कोड इस तरह दिखना चाहिए:

@yrs =[2011,2010,2009,2008] 
<%= select_tag 'year', options_for_select([["Select" , "" ]] + @yrs.to_a,2011) %> 

चयन टैग के लिए सामान्य प्रारूप है:

<%= select_tag 'year', options_for_select(:collection, :selected) %> 
+1

मेरे पास एक महत्वपूर्ण मान के रूप में एक स्ट्रिंग का उपयोग कर एक महत्वपूर्ण मान के रूप में एक पूर्णांक था। जहां आपने to_a का उपयोग किया था, मुझे to_i का उपयोग करने की आवश्यकता थी। मुझे सही दिशा बताने के लिए धन्यवाद। यह मेरे लिए काम करता है: <% = select_tag (: map_set_priority_filter, options_for_select (MapSet.priority_filters.collect {| प्राथमिकता | [प्राथमिकता। नाम, प्राथमिकता.आईडी]}, @ map_set_priority_filter.to_i))%> – John

25
<%= select_tag "page_type", options_for_select(@page_type.collect{ |u| [u.data_name, u.id]}, :selected=>@page.page_type), {:class =>"select_combobox",:onchange=>"reset_form(this.id,'page_type_msg');"} %> 

यह मेरे लिए काम करता है :)

संबंधित मुद्दे