我知道你在這裏失蹤是var
點。在您的第一個循環中,captureQuestion
將成爲來自列表captureQuestionList
的當前對象。您可以按原樣使用該參考,因此您無需使用captureQuestionList[${status.index}]
即可獲取該對象。順便說一下,正確的語法是${captureQuestionList[status.index]}
。所以,你fieldset的名字可以只是${captureQuestion.languageId}
。
For循環可以嵌套。例如(使你的問題對象的某些假設):
<c:forEach items="${capQues.captureQuestionList}" var="captureQuestion">
<fieldset name="${captureQuestion.languageId}">
<legend><c:out value="${captureQuestion.languages}" /></legend>
<c:forEach items="${captureQuestion.questionList}" var="question">
<div class="question">
<textarea class="textarea" name="${question.id}"><c:out
value="${question.value}"/></textarea>
</div>
</c:forEach>
</fieldset>
</c:forEach>
注意textarea
沒有一個value
屬性。把價值放在它的身上。
編輯:如果您需要遍歷的語言列表,你可以使用同樣的原理:
<c:forEach items="${capQues.captureQuestionList}" var="captureQuestion">
<fieldset name="${captureQuestion.languageId}">
<legend>
<c:forEach items="${captureQuestion.languages}" var="language">
<c:out value="${language.name}" />
</c:forEach>
</legend>
<div class="question">
<textarea class="textarea" name="${captureQuestion.question}"></textarea>
</div>
</fieldset>
</c:forEach>
如果你想顯示一個單一的語言添加c:if
來檢查語言
<c:forEach items="${captureQuestion.languages}" var="language">
<c:if test="${language.id eq captureQuestion.questionId}">
<c:out value="${language.name}" />
<c:if>
</c:forEach>
儘管最好只在模型中添加對正確語言的引用,以便您可以使用${captureQuestion.language}
。
Japser嗨,Thnks您的回覆,但我現在面臨的問題是
請參閱編輯 –
您好Japser thnks您的及時答覆。它工作正常,因爲你說過。你的幫助真的很感激。 – user1517010