2011-08-12 125 views
2

嗨我想在grails中動態創建一個只強調某些選項標籤的下拉列表。以下是我有:Grails選擇標籤:添加樣式到特定的選項

<g:select class="DropDownList" 
    from="${listOfMaps}" 
    optionValue="${{(it.match=='Something'?'<em>':'') + it.thingToPrint 
    + (it.match=='Something'?'</em>':'') }}" 
    /> 

和這部作品在某種意義上說,它會打印打印的東西,但是當它是假設添加<em>標籤是打印這樣的:

<option>&lt;em&gt;ITEM&lt;/em&gt;</option> 

這不是我所需要的。在下拉列表中打印<em>ITEM</em>

有誰知道如何得到它是這個:

<option><em>ITEM</em></option> 

,這樣它會打印「項目」?

,我迄今所使用的資源:

+0

相關:http://stackoverflow.com/questions/5976941/grails-gselect-tag –

回答

2

<g:select/>標記HTML編碼值從optionValue屬性返回,這就是爲什麼你的HTML是越來越逃脫。

要做到這一點,最好的方法是編寫一個自定義taglib,但是,即使這樣你可能會想用CS代替標記來做到這一點,因爲<option>標籤的CSS樣式可能會得到更廣泛的支持。

+0

那麼,有沒有辦法爲每個''

+1

不通過提供的''標籤。內置taglibs專爲簡單用例而設計,大多數時間需要您編寫自己的實現以獲得您要查找的行爲。我說大概有一半時間我會寫我自己的標記。 – Rhysyngsun