[英]Set select value in gsp
控制器:
def abbrev = [:]
abbrev.put(1,"I")
abbrev.put(2,"II")
abbrev.put(3,"III")
abbrev.put(4,"IV")
List<Expando> abbreviations = abbrev.collect{
abbreviation -> Expando.newInstance(key:abbreviation.key,value:abbreviation.value)
}
def row = [:]
def programRows = [ ]
somelist.each {
item -> row = [key1:value1, key2,value2 ]
programRows << row
}
[abbreviations:abbreviations, programRows:programRows ]
我通過programRows進行迭代,所以我得到了一張地圖(programRow)。 映射value1等效於縮寫鍵(Expandos列表),因此我想基於此設置選擇值:我評論了選項值,以便您可以了解要分配的值。
查看gsp:
<g:each in="${programRows}" var="programRow">
<g:select name="abbrevs" from="${abbreviations}" optionValue="//programRow.get('key1')//" optionKey="key" class="vfuCourseAbbreviations"/>
我怎樣才能做到這一點??
我將您的代碼放入:
def someAction(){
def abbreviations = [ 'I', 'II', 'III', 'IV' ]
def programRows = somelist.collect {
[ key1:value1, key2:value2 ] // as "value1" you have to pass the index in "abbreviations"
}
[ abbreviations:abbreviations, programRows:programRows ]
}
GSP:
<g:each in="${programRows}" var="programRow">
<select name="abbrevs">
<g:each in="${abbreviations}" var="abbr" status="i">
<option value="${i}" ${i == programRow.key1 ? 'selected' : ''}>${abbr}</option>
</g:each>
</select>
</g:each>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.