2014-02-21 11 views
1

我有一個def statusMap = HashMap<String, List<MyItem>>()傳入我的gsp頁面。如何使用g:render和我的g:Map集合中的每個變量?

在我的GSP頁面,我有以下:

<g:each var="myList" in="${statusMap}"> 
    <div id="pending_list" class="onTop"> 
    <g:render template="/list" model="['list':"${myList.value}", 'listSize':"${myList.value.size()}"]" /> 
    </div> 
</g:each> 

,但我似乎不能正確傳遞myList.valuemyList.value.size()到我的模板。我認爲我的報價是錯誤的,但我不確定。

如何正確地將myList.value和myList.value.size()通過模型傳遞給列表模板?

+0

您是否嘗試過?

+0

我剛試過,它沒有工作。任何其他想法? – Grammin

+0

我剛剛意識到你正在用Map來做這件事。你是否想遍歷地圖中的所有鍵?如果是的話,我可以發表一個關於如何做到這一點的答案。 –

回答

1

由於您正在使用地圖,因此您的迭代將基於該地圖中的按鍵。因此,基本語法如下:

<g:each in=${yourCoolMap.entrySet()}" var="entry"> 
${entry.key} = ${entry.value} 
</g:each> 

因此,您的代碼將是這個樣子:

<g:each var="myList" in="${statusMap.entrySet()}"> 
    <div id="pending_list" class="onTop"> 
    <g:render template="/list" model="['list': myList.value, 'listSize': myList.value.size()]" /> 
    </div> 
</g:each> 
+0

感謝這工作! – Grammin

+0

你不止歡迎。 –

相關問題