0

jspファイルにドロップダウンリストがあります

<select name="PID" id="PID" style="min-width: 100px;" >

<% 
for(somelist pm : List) { %>
<option value="<%=pm.getsmthing()%>" selected><%=pm.getName()%></option>
<option  value="-1">Select a Property</option>

これはフォームの中にあります。フォーム送信後、選択したアイテム名を覚えておきたい。

4

2 に答える 2

1

selected関連するリクエストパラメータの値がまったく同じである場合は、条件付きで出力するだけです。

<option value="<%=pm.getsmthing()%> <%=(pm.getsmthing().equals(request.getParameter("PID")) ? "selected" : "")%>><%=pm.getName()%></option>

セッションに保存しないでください。同じセッションのすべてのブラウザタブ/ウィンドウのすべてのページに影響し、「wtf?」が発生する可能性があります。エンドユーザーの経験。


具体的な問題とは関係なく、 JSPを書くのはかなり昔ながらの方法です。JSTLELを学びましょう。コードは次のようになります。

<select name="PID" id="PID" style="min-width: 100px;">
  <c:forEach items="${List}" var="pm">
    <option value="${pm.smthing}" ${pm.smthing == param.PID ? 'selected' : ''}>${pm.name}</option>
    <option value="-1">Select a Property</option>
  </c:forEach>
</select>
于 2012-04-27T16:13:13.510 に答える
0

選択した値をHTTPセッションに追加し、フォームを表示する必要があるときはいつでもそれを取得します。

于 2012-04-27T10:53:20.773 に答える