ある画面(formnn10.jsp)データベースから読込んだ抜粋データをテーブルに出力し、該当する情報を1件選択(パラメータ化)してsubmitボタンで次画面(formn11.jsp)へ送り、再度データベースを読み込み詳細の表示を行う処理を構築中です。
現在、選択はラジオボタンをループで作成し、valueでパラメータを与えています。
この値の一部をJavascriptで取り出し、ダイアログへ選択の確認メッセージとして表示したいのですが、'document.formnn10.parm_No.valueはNull又はオブジェクトではありません'とのエラーメッセージが表示されます。(parm_Noがラジオボタンのnameです。)
デバッグを行わず、次画面formnn11に処理が移ると選択情報の詳細は表示される為、javascriptでの値の取り出し方が問題の様なのですが…。
formnn10.jspのテーブル表示部分のコーディングは次の通りです。
<% for(int j=0;ichiran2[j][0]!=null;j++){
out.println("<tr>")
out.print(" <td align=\"center\">");
out.print("<INPUT type=\"radio\" name=\"parm_No\" value=\""+wkparm_No+"\>");
out.print("</td>")
out.println("</tr>")
javascript側のコーディングは次の通りです。
wkname = document.formnn10.parm_No.value.substring(8);
こんな感じです。ここに未表示のファイル名他の不一致についてはとりあえず無さそうです(手打ちしているので誤打鍵御容赦)
現在はラジオボタン+submitの形式で選択していますが、現行の方法に固執する必要は無く変更可能です。
各行の横で対象指定を行い、Javascriptで値を拾い(ダイアログに表示出来)、formnn11.jspでparm_Noとして値を受取るにはどうすれば良いでしょうか。
No.2ベストアンサー
- 回答日時:
ラジオボタンは、Javascriptでformに対してnameで取ると
各ラジオボタン(同じname)の配列(Array)で返されるようです。
ただし、ラジオボタンが1つだと、要素が1つの配列ではなく
ラジオボタンそのものが返されるようです。
私のよくやる手は、別途hiddenを作る方法です。
まず、ラジオボタン(formに対してnameで取ったもの)を引数に
選択されたvalueを返すfunction、指定したvalueのラジオボタンを
checkedにするfunctionなどを、共通的に作っておきます。
そして、別途作ったhiddenのvalueにラジオボタンで選択された
valueを入れたり、逆にhiddenのvalueをラジオボタンに反映する
といった動きを、submit時、onLoad時にJavascriptでやります。
そして、Servletと結びつけるのはhiddenの方にします。
ラジオボタンの選択されたvalueを送るサンプルです。
(動作確認はしてません)
--------------
<form method="POST" action="formnn11.jsp" onSubmit="copyRadioToHidden(this)">
<%
for(int j = 0 ; ichiran2[j][0] != null ; j++) {
%>
<input type="radio" name="parm_No_Radio" value="<%= j %>">
<%
}
%>
<input type="hidden"parm_No" value="">
<input type="submit">
</form>
--------------
function copyRadioToHidden(form) {
// ラジオボタンの選択されたvalueをhiddenにコピー
form.parm_No.value = getRadioValue(form.parm_No_Radio);
}
function getRadioValue(radio) {
if(radio.length) {
// ラジオボタンが複数個
for(var i = 0 ; i < radio.length ; i++) {
if(radio[i].checked == true) {
return radio[i].value;
}
}
}
else if(radio.value) {
// ラジオボタンが1個
return radio.value;
}
else {
// ラジオボタンがない
return "";
}
}
丁寧な説明迄有難う御座いました。
授受しなければならないパラメータを増やしたく無い
(後々の理解楽そうな)ので、今回はこちらの方法を使わせて頂きます。
有難う御座いました。
No.1
- 回答日時:
javascript側で
ボタン選択回数分ループで回して
チェックされた値を受け取ってからJSPに渡すと
いいと思います。
参考URL:http://www.openspc2.org/reibun/javascript/form/0 …
この回答への補足
字面を読んでしっくり来てなかったのですが、リンクを見て(最初気付いてませんでした、すいません)納得しました。
checkedと値の取り出しを分けて行うという事ですね。一度組み込んで見ます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
見学に行くとしたら【天国】と【地獄】どっち?
みなさんは、一度だけ見学に行けるとしたら【天国】と【地獄】どちらに行きたいですか? 理由も聞きたいです。
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
人生でいちばんスベッた瞬間
誰しも、笑いをとろうとして失敗した経験があると思います。
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
ラジオボタンの選択肢をサーブレットで取得するには?
Java
-
データベースの値を判断してラジオボタンにセットする方法
Java
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・ことしの初夢、何だった?
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ラジオボタンのチェックが外れ...
-
チェックボックスのON/OFFに連...
-
ラジオボタンにタブインデック...
-
プルダウン選択を変更すると、...
-
setIntervalの間隔を途中で変更...
-
button使用で送信確認後のsubmit
-
追加ボタンを押した際に ok ボ...
-
return trueとreturn falseの用...
-
JavaScriptの「.querySelectorA...
-
jQuery セレクトボックスで選択...
-
tableの任意行にfocusをあてる
-
javascriptにてHTMLのhiddenエ...
-
チェックボックスを複数選択し...
-
hiddenのvalueの値を変えたい
-
JavaScriptで特定のtdタグにcla...
-
onclickをEnterキーでも行いたい
-
チェックボックスのvalueをテキ...
-
eval()を使わずに数値を取得し...
-
テキストボックスの入力をリセット
-
onchangeイベントを強制的に発...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラジオボタンにタブインデック...
-
ラジオボタンのチェックが外れ...
-
ラジオボタンでdisabledとchecked
-
データベースの値を判断してラ...
-
javascript作成してます。ラジ...
-
ラジオボタン未チェックの場合...
-
チェックされたラジオボタンに...
-
フォームPOST後「戻る」時のチ...
-
ラジオボタンのValueを受け取り...
-
ラジオボタンの値でリンク先を...
-
Jvasvriptのlengthで個数が取得...
-
javascriptによる動的なリンク...
-
ラジオボタンのチェック数に応...
-
ラジオボタンとif文
-
JavaScript ラジオボタン デ...
-
ラジオボタンのリセット方法
-
(jQuery)ラジオボタン選択値を...
-
ポップアップウインドウで選択...
-
リセットボタンでクリアできな...
-
ラジオボタンの未選択チェック...
おすすめ情報