2009-10-30 5 views
4

g:select 태그에서 옵션 필드를 기본적으로 선택할 수 있습니까?GSP g : 선택 옵션 기본 선택

문서의 "noSelection"매개 변수 만 보았습니다.

<g:select name="user.age" from="${18..65}" value="${age}" 
     noSelection="['':'-Choose your age-']"/> 

그러나받은 데이터에서 기본 선택이 필요합니다.

예를 들어, 18..65는 내 범위이고 기본 선택으로 20 개를 선택하고 싶습니다.

자바 스크립트로 가능합니까?

value 속성은 정확하게 작업을 수행하면

답변

13

감사드립니다. Grails 문서에서 :

값 (선택 사항) - from 목록의 요소 중 하나에 대해 equals()를 true로 평가하는 현재 선택된 값입니다. 답변 주셔서 감사합니다 다음과 같은 경우에 "20"을 선택하려는 경우

그래서, 당신의 age 모델 변수는

<g:select name="user.age" from="${18..65}" value="${age ?: 20}" 
     noSelection="['':'-Choose your age-']"/> 
+0

먼저 수행 null입니다. 이제 제대로했습니다. 폐하가 도와 줬어. 그래서 저는 기본값으로 20을 넣고 싶습니다. 즉, closure없이 value 속성에 "20"을 넣어야한다는 의미입니다. "$ (age? : 20)"클로저를 사용하면 나이가 설정되어 있지 않으면 기본값으로 "20"만 남았습니다. – OemerA

+0

실제로는 클로저가 아니라 EL 표현식입니다. 그리고 예, 당신이 항상 20을 선택하고 싶다면 (예를 들어, 이것이 생성보기 인 경우), 값으로 "20"을 설정하십시오. 완전히 확신 할 수는 없지만 Grails가 문자열 (즉, value = "$ {20}")이 아닌 정수로 해석하도록 $ {}에 배치해야합니다. –

+1

BTW,'age? : 20'은'age? age : 20'는'if (age! = null) age; else 20;' –