2

JSPページを使用していて、フェッチされたストレージオブジェクトのテーブルが表示されています。ユーザーがストレージオブジェクトのサイズを示している数値をクリックしたときに、別のJSPページへのポップアップが必要です。

指定したストレージアイテムの名前をJavascript(またはその他の手法)を使用してポップアップJSPウィンドウに渡し、ポップアップJSPでその名前を取得して、そのページのコードで使用できるようにするにはどうすればよいですか?

スクリプトレットのforループは次のようになります。

<% for(Storage s : someList){ %>
   <tr>
      <td> <%= s.getName() %> </td> <td> <%= s.getSize() %> </td>
   </tr>
<% } %>
4

1 に答える 1

3

リクエストパラメータとして渡します。

例えば

<td onclick="window.open('popup.jsp?name=<%= URLEncoder.encode(s.getName(), "UTF-8") %>', 'windowname')">

popup.jsp:

<%= request.getParameter("name") %>

または、よりきれいに、JSTLELを使用します。

<c:forEach items="${someList}" var="s">
  <c:url value="popup.jsp" var="popupUrl">
    <c:param name="name" value="${s.name}" />
  </c:url>
  <tr>
    <td>${s.name}</td><td onclick="window.open('${popupUrl}', 'windowname')">${s.size}</td>
  </tr>
</c:forEach>

内部popup.jsp

${param.name}
于 2011-09-28T20:58:25.530 に答える