###セレクトボックス状態の初期化
Springフレームワーク(Java, jsp)を用いたWEBシステムの開発をしています。
セレクトボックスの値の制御に関してなのですが、ページが変わるたびにセレクトボックスの選択状態を常に選択肢の一番上としたいと考えております。しかし、現状ではページが遷移しても前ページの選択状態が引き継がれてしまっています。(2番目や3番目になってしまっている。)
selected="selected" を form:foreachタグの中にあるc:ifタグにて制御して要件を満たそうと試みておりますが、状態が引き継がれてしまいます。
どのようなアプローチをすればよいでしょうか。よろしくお願いいたします。
(ただし、JavaScriptは使用しない)
###現在のソースコード
sample.jsp:
1sampleController.java 必要な個所のみ記載 2------------------------------------------------------------------------ 3 4//あるForm処理で呼び出されるメソッド 5@RequestMapping(params = "add", method = RequestMethod.POST) 6public String add(@Valid SampleForm form, BindingResult result, Model model){ 7 8 //productNameListは、String型の配列 9 model.addAttribute("productList", productNameList); 10 model.addAttribute("initProduct", "productNameListの一番上のアイテム名"); 11 return "sample"; 12} 13 14------------------------------------------------------------------------ 15 16sample.jsp 17------------------------------------------------------------------------ 18<form:select path="productName"> 19 <c:forEach items="${productList}" var="product" varStatus="loop"> 20 <c:choose> 21 <c:when test="${product == initProduct }"> 22 <form:option value="${product}" selected="selected"/> 23 </c:when> 24 <c:otherwise> 25 <form:option value="${product}"/> 26 </c:otherwise> 27 </c:choose> 28 </c:forEach> 29</form:select> 30------------------------------------------------------------------------
###補足情報(言語/FW/ツール等のバージョンなど)
Java8
springframework-version 4.1.7
回答4件
あなたの回答
tips
プレビュー