2011-12-10 3 views
3

jQuery-ui Selectmenu로 놀았지만 grouped_collection_select으로 작동하지 못했습니다. Selectmenu는 클래스를 "selectmenu"로 설정할 때 jQuery-ui를 찾을 기본 선택으로 작동합니다. 기본적으로 클래스를 grouped_collection_select에 추가하기 위해 고심하고 있습니다.jQuery 레일이있는 선택 메뉴 grouped_collection_select

이 나는 ​​시도했다 : <%= f.grouped_collection_select(:state_id, Country.order(:id), :categories, :name, :id, :name, :class=>"selectmenu")%>

<%= f.grouped_collection_select(:state_id, Country.order(:id), :categories, :name, :id, :name, {:include_blank=>true, :class=>"selectmenu"})%>

및 내가 $를 사용하여 클래스를 추가 할 수 있었다 ('#의 user_state_id) .addClass 내 커피 스크립트에서 ('selectmenu '). 그러나 이것은 내 동적 메뉴가 내 상태 선택 메뉴에 대한 옵션을 업데이트 할 수 없게하는 것처럼 보였습니다.

내가 여기에없는 것에 대한 생각은 무엇입니까? grouped_collection_select에 대한 클래스를 설정하는 더 좋은 방법이 있습니까? 소스 코드를 확인한 결과 클래스가 다음과 같이 추가되지 않았습니다 : class =>grouped_collection_select.

selectmenu는 : http://jquery-ui.googlecode.com/svn/branches/labs/selectmenu/index.html

답변

4

grouped_collection_select 아홉 개 인수를 취합니다. f과 함께 객체를 전달하는 경우 여덟 개의 인수 만 필요합니다.

마지막 인수는 html_options이며 여기에서 class을 입력해야합니다. 이 경우 양식 필드 요소에 class이 표시되지만 optgroup 또는 option 요소는 표시되지 않습니다.

<%= f.grouped_collection_select(:state_id, Country.order(:id), :categories, :name, :id, :name, { :include_blank => true }, { :class=> "selectmenu" }) %> 

:include_blank => true없이 그 결과는 다음과 같습니다

<%= f.grouped_collection_select(:state_id, Country.order(:id), :categories, :name, :id, :name, {}, { :class=> "selectmenu" }) %> 

를 당신에게 얻을해야하는 :

<select class="selectmenu" id="object_state_id" name="object[state_id]">...