0

getParameter は、タグ内の String 要素の最初の部分のみを出力しています。

ここに選択タグがあります

<select name="ActionSelect" id="ActionSelect" >
<%Iterator itr;%>
<% List data = (List) request.getAttribute("data");
   for (itr = data.iterator(); itr.hasNext();) {
     String value = (String) itr.next();
%>
<option value=<%=value%>><%=value%></option>
<%}%>
</select>

これがサーブレットのコードです

PrintWriter pw = response.getWriter();
String connectionURL = "jdbc:mysql://localhost/db";
Connection connection;
try{
  this.ibrand = request.getParameter("ActionSelect");
  pw.println(ibrand);
} catch (Exception e) {
  pw.println(e);
}
4

1 に答える 1

6

オプション タグの値を二重引用符で囲みます。

<option value="<%=value%>"><%=value%></option>

現時点では、おそらく値にスペースが含まれているため、スペースの前の値の部分のみが返されます。

ちなみに、Iterator を uptop で宣言する必要はありません。for ループで直接行うことができます。

for (Iterator itr = data.iterator(); itr.hasNext();) {

最後に、JSP で Java コードをスクリプトレットとして直接記述する代わりに、タグ ライブラリを使用することを検討してください。

于 2009-10-15T06:18:53.203 に答える