質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

1211閲覧

jspからサーブレットへのパラメータの引き渡しをループで行う

退会済みユーザー

退会済みユーザー

総合スコア0

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2020/05/25 01:12

編集2020/05/25 14:22

前提・実現したいこと

情報が伝わりにくいと思い
再度質問編集させていただきます。

ループで表現しようとし、引き渡すパラメータのnameもループしているため、ループの最初の値のみ引き渡しているような状態だったので、下記のように修正しましたがうまく処理できませんでした。

下記要望のように処理するにはどの箇所を修正すればいいでしょうか?

要望

イメージ図
検索結果
①ボタン 番号 名前

②ボタン 番号 名前 

③ボタン 番号 名前 

①のボタンを押せば①の番号、名前の情報をもって、②のボタンをボタンを押すと②の情報をもってontroller(サーブレット)にpostできる。

該当のソースコード

<%int loopcount = 0;%> <%for(int i=0; i < a.getResultUsers().size(); i++){%> <tr> <td><input type="submit" name="Update<%=loopcount%>" value="変更" onclick="return ReadOnly()"> <input type="submit" name="Delete" value="削除"></td> <td><input type="text" name="SearchResultCopcod<%=loopcount%>" readOnly value=<%= a.getResultUsers().get(i).getCopcod()%> size="5"></td> <td><input type="text" name="SearchResultEmpnum<%=loopcount%>" readOnly value=<%= a.getResultUsers().get(i).getEmpnum()%> size="5"></td> <td><input type="text" name="SearchResultKnjnamsei<%=loopcount%>" readOnly value=<%= a.getResultUsers().get(i).getKnjnamsei()%> size="5"></td> <td><input type="text" name="SearchResultKnjnammei<%=loopcount%>" readOnly value=<%= a.getResultUsers().get(i).getKnjnammei()%> size="5"></td> <%loopcount++; %> </tr> <%}%> </table> <input type="hidden" value="<%=loopcount%>" name="UserListCount"> </form> <%}%> ### 該当のソースコード ```パラメータをうけとるサーブレット for(int i = 0;i == (int)Integer.parseInt(request.getParameter("UserListCount"));i++){ if(i == (int)Integer.parseInt(request.getParameter("UserListCount"))) { String SearchResultCopcod =request.getParameter("SearchResultCopcod"+i); String SearchResultEmpnum =request.getParameter("SearchResultEmpnum"+i); String SearchResultKnjnamsei =request.getParameter("SearchResultKnjnamsei"+i); String SearchResultKnjnammei =request.getParameter("SearchResultKnjnammei"+i); User s = new User(); s.SearchResult(SearchResultCopcod,SearchResultEmpnum,SearchResultKnjnamsei,SearchResultKnjnammei); request.setAttribute("s",s); System.out.println(SearchResultCopcod); String disp = "WEB-INF/Update.jsp"; RequestDispatcher dispatch = request.getRequestDispatcher(disp); dispatch.forward(request, response); } }``` ### 該当のソースコード ```Userのインスタンス(Java)※あまり関係ないかもしれないです private String SearchResultCopcod; private String SearchResultEmpnum; private String SearchResultKnjnamsei; private String SearchResultKnjnammei; public String getSearchResultCopcod() {return this.SearchResultCopcod;} public String getSearchResultEmpnum() {return this.SearchResultEmpnum;} public String getSearchResultKnjnamsei() {return this.SearchResultKnjnamsei;} public String getSearchResultKnjnammei() {return this.SearchResultKnjnammei;} public void SearchResult(String SearchResultCopcod,String SearchResultEmpnum,String SearchResultKnjnamsei,String SearchResultKnjnammei) { this.SearchResultCopcod = SearchResultCopcod; this.SearchResultEmpnum = SearchResultEmpnum; this.SearchResultKnjnamsei = SearchResultKnjnamsei; this.SearchResultKnjnammei = SearchResultKnjnammei; }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

どのソースがどれに当たるのか、いまいちよくわかりませんが、
「何番目のデータを選択したか」という情報がないからじゃないですかね。

こちらが参考になるんではないかと。
JSPでinputタグのname属性をまとめたい

投稿2020/05/25 04:11

kaputaros

総合スコア1844

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/05/26 07:09

質問内容を編集を行いましたので改めてご教授頂けると助かります。 何か至らぬ点がございましたらご指摘のほう 宜しくお願い致します。
kaputaros

2020/05/27 00:51

これだと、どのボタンでsubmitしても UserListCount の値が変わらないんじゃないですかね。 UserListCount はあくまでリストに入っている件数ですよね。 onclick で呼び出している ReadOnly() の中で何をしているか分かりかねますが、、、。 こちらのサイトが参考になるんじゃないかな?と思います。 http://www.trust-service.co.jp/it/nomihodai/submit01/submit01.shtml
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問