2015-09-02 2 views
0

В моей странице просмотра мой HTML является following-Dynamic Dropdown не работает в GSP

<select id="sereousness" > 
<option value="0" ${(subscribed.sereousness == '0')?'selected':''}>Casual${subscribed.sereousness}</option> 
<option value="1" ${(subscribed.sereousness == '1')?'selected':''}>Sereous${subscribed.sereousness}</option> 
<option value="2" ${(subscribed.sereousness == '2')?'selected':''}>VerySereous${subscribed.sereousness}</option> 
</select> 

, но это первый вариант отображения, выбранные каждый раз, даже значение ${subscribed.sereousness} отличается?

enter image description here

+0

Как определяется 'signed_sereousness'? – lifeisfoo

+0

Посмотрите на HTML, который сгенерирован, что он говорит? Где «выбранный» тег? – Aston

+0

'subscribed' является объектом класса TrendingTopicCO { INT sereousness } –

ответ

0

Лучший способ построить свой ВЫБРАТЬ, чтобы использовать g:select тег Грааля в.

Сначала создайте List, чтобы предоставить доступные варианты. Лучше всего сделать это в своем контроллере и передать его в свой GSP через модель. Ваш список может состоять из пар ключ/значение, как это:

def options = [ 
    [id: 0, desc: 'Casual'], 
    [id: 1, desc: 'Serious'], 
    [id: 2, desc: 'Very Serious'] 
] 

Далее в вашем GSP вы можете использовать что-то вроде этого:

<g:select 
    name="sereousness" 
    from="${options}" 
    value="${subscribed.sereousness}" 
    optionKey="id" 
    optionValue="desc" 
    noSelection="['':'-Choose your seriousness-']"/> 

<g:select> тег будет генерировать список опций, содержащий элементы в options. Выбранный элемент будет указан в subscribed.sereousness. Когда элемент выбран и форма отправляется, значение sereousness будет содержать значение (ID) выбранного параметра.