
JSPでデータを管理するようなものを作りたいと思っています。
まず検索画面で年・月・日・時間が検索できるようにselect文で設定しています。
結果画面では検索画面で年だけ選択の場合は年ごとに月まで選択したときにはその年の月ごとに表示させます。
そして困っているのはココからなんですがたとえば
検索結果が
2004年 0人 5人
2005年 4人 2人
となっているときに2004年をクリックできるようにしてクリックしたときには2004年を月単位で表示させたいのです。
つまり
1月 5人 1人
2月 4人 3人
3月 0人 0人
というようにです。
このクリックしたときにクリック元(この場合は2004年)の情報をどうやって渡すか、また取得するか悩んでいます。
もちろん、最初の検索画面からの検索結果が出るソースと2004年をクリックしもっと詳細を表示させる画面のソースは同じものを使いたいと思っています。
とても困っていますのでご存知の方宜しくお願いします。
No.1ベストアンサー
- 回答日時:
ご質問の内容から察するとJavascriptのカテゴリではなく、Javaのカテゴリですね。
JSPはJavascriptではありません。
ご質問についてですが、
画面のソースに同じものを使うことも可能ですが、別々にしたほうが分かりやすくなると思います。
year.jsp
2004年 0人 5人
2005年 4人 2人
を表示するJSP
month.jsp
2004年
1月 5人 1人
2月 4人 3人
3月 0人 0人
を表示するJSPで表示するには「year=2004」というターゲットの西暦値が必要。
こういうふうに分けておくと、あとから
「やっぱり2004年をクリックしたら表の下にパラッと月のデータがプルダウンしたほうがいい」
とか
「別ウインドウでポップアップさせたい」などの要求に応じて変更するときに対応しやすかったりします。
ですので、私の場合は、見る目的が異なる画面は別ソースにするようにしています。
値の受け渡しについてですが、JSPではHttpServletRequestのインスタンスに「request」でアクセスできます。
つまり、
まずyear.jspを表示させて、その画面中で
<a href="month.jsp?year=2004">2004年</a>
のようなリンクを作っておくと
month.jspのスクリプトで
String clicked_year = request.getParameter("year");
このように書くことで、「2004」という値が渡されます。
もちろん、year.jspの中で
<a href="year.jsp?year=2004">2004年</a>
というように自分自身にパラメータを渡すこともできます。
但し、上記の方法では、
(1)英数字以外の文字はいちいちURLエンコードしなければならない
(2)GETを許可していないサーバーでは使えない
(3)渡せるパラメータの文字数に制限がある
などの問題がありますが、西暦の値だけ渡したいのであれば、これで十分かと思います。
その他の値の受け渡し方法としては
<form name="parameter" method="POST" action="month.jsp">
<input type="hidden" name="year">
</form>
のようにフォームを作って、「2004年」をクリックしたらJavascriptで、hiddenオブジェクト「year」に「2004」という値をセットして、
document.parameter.submit()
とする方法や、
HttpSessionを使ってオブジェクトごと受け渡すこともできますが、まだいろいろと学習中のようですから、あまりお薦めではありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- エッセイ・随筆 尋常小学校唱歌『さくら さくら』の解釈について以下のものは成立しますか?普通じゃおもろない? 7 2023/02/26 16:52
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- Access(アクセス) Access 複数条件検索の設定が上手く行きません 1 2022/07/22 20:37
- Chrome(クローム) Chromeでgooglemap検索等結果が他国になってしまう 1 2022/10/05 12:18
- Firefox(ファイヤーフォックス) google検索の画面だけ表示できない時がある 2 2022/12/14 19:05
- 不動産鑑定士・土地家屋調査士 合筆された地積測量図の取得(登記情報提供サービス) 1 2022/07/13 00:30
- Windows 10 Windows 10 ノートのディスプレイが暗いです 6 2023/07/16 12:59
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
AjaxでJDBC利用
-
C言語で今まで表示していた画面...
-
リンク元の値の取得
-
[戻る]やhistory.backでの遷移...
-
ダイアログ内での遷移方法
-
IEの開き方を通常に直すソース...
-
PCの画面上の任意の点から色を...
-
location.hrefでページ切替時の...
-
←戻る → を無効にする方法
-
フレームの副画面側のページを...
-
ブラウザのIDの調べ方が解りません
-
継承したFormでKeyDownイベント...
-
VBS/HTA:画面のサイズを取得す...
-
画面設計方法について
-
画面に固定の方法
-
リストボックスについて
-
携帯専用サイトをPC上でキャプ...
-
htmlで入力画面を作り次の...
-
検索した内容をフォームに反映...
-
"+"文字が" (スペース)"に文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
三菱GOTの画面切り替えについて
-
C言語で今まで表示していた画面...
-
Java-jspの画面入力値保持について
-
登録後、呼び出し元ページに戻...
-
C# ログイン画面からメイン画面...
-
【C#】 FormClosingのイベント...
-
FormのsubmitでFormの内容がnull
-
location.hrefでページ切替時の...
-
ASP.NET 画面遷移前の状態を保...
-
Javaプログラミングの質問にな...
-
java初心者です。 画面Aで情報...
-
遷移元を判定したい!
-
セッション切れでのリクエスト...
-
画面を隠す・消す方法を教えて...
-
window.open()使用サブウィンド...
-
【JavaScriptわからない】1クリ...
-
MFCプログラミング
-
javaのstrutsを使った画面遷移...
-
子画面でもう一つ教えて下さい
-
CSVダウンロードでウィンド...
おすすめ情報