
プログラム初心者です。
js上で配列を作成し、それをフォームのvalue値としてサーブレットに送りたいのですが上手くいかず詰まっております…。
どなたかお力を貸していただけないでしょうか?
■js
function setValue(){
var val1=['a1','a2','a3'];
var val2=['b1','b2','b3'];
var val3=['c1','c2','c3'];
for(i=0;i<3;i++){
document.form1.sub_val[i].value =(val1[i]+','+val2[i]+','+val3[i]);
}
return true;
}
■jsp
<head>
<script type="text/javascript" src="setValue.js"></script>
</head>
<body>
<form name="form1" method="post" action="XXX" onSubmit="return setValue()">
<INPUT type="hidden" name="sub_val[]">
<BUTTON type="submit">送信</BUTTON>
</form>
<body>
■やりたいこと
js上で配列内の文字列を連結して、それをサーブレットへ送りたい
今回だと
sub_val[0]="a1,b1,c1";
sub_val[1]="a2,b2,c2";
…
という配列suv_valをサーブレットへ送る
■困っていること
サーブレットへ配列が遅れない
alert(document.form1.sub_val[i].value) でアラートが反応しなかったのでdocument.form1.sub_val[i].valueの書き方に問題があるのではとは思うのですが…。
よろしくお願いいたします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
サーブレットに配列を送るには、「同じ名前」の要求パラX―タを
複数おくるだけです。
つまりフォームの中に同じname属性のinputタグと複数JSで
生成すればよい。
勿論、JSONやXMLをー個の文字列として送って、サーバ側で
サーブレットがそれを文字列として受け取った後、配列に
変換してもよいです。
No.2
- 回答日時:
JSON に変換すれば、配列だろうがなんだろうが、簡単に送れます。
ただし、サーブレット側にて JSON から値を取り出す一手間が増えますのでご注意ください。
<script>
function setValue(ev) {
_ if (ev.target.name != 'form1') return;
_
_ var val1=['a1','a2','a3'];
_ var val2=['b1','b2','b3'];
_ var val3=['c1','c2','c3'];
_
_ var values = [];
_ for (i=0; i<3; i++) {
_ _ values.push(val1[i] + ',' + val2[i] + ',' + val3[i]);
_ }
_ var form = document.forms['form1'];
_ form.elements['sub_val'].value = JSON.stringify(values);
}
window.addEventListener('submit', setValue, false);
</script>
<form name=form1 method=post action=xxx>
<input type=hidden name=sub_val>
<button type=submit>送信</button>
</form>
No.1
- 回答日時:
こんな感じですか?
動作が確認できたらtextをhiddenにしても大丈夫です
<script>
function setValue(){
var val1=['a1','a2','a3'];
var val2=['b1','b2','b3'];
var val3=['c1','c2','c3'];
for(i=0;i<3;i++){
document.form1.elements["sub_val["+i+"]"].value =(val1[i]+','+val2[i]+','+val3[i]);
}
return false;//submitするならtrue;
}
</script>
<form name="form1" method="post" action="XXX" onsubmit="return setValue()">
<INPUT type="text" name="sub_val[0]">
<INPUT type="text" name="sub_val[1]">
<INPUT type="text" name="sub_val[2]">
<BUTTON type="submit">送信</BUTTON>
</form>
ご回答ありがとうございます。
<INPUT type="text" name="sub_val[0]">
…
のように配列のインデックスを書けば送ることはできるのですが、今度はrequest.getParameter("sub_val")で取得することができす…。
request.getParameterValues("sub_val[0]")のようにインデックス番号まで指定すれば取れるのですが、それだとあまり意味がない感じで…。
何かいい方法がございますでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript Javascript初心者|jQueryの.val()で値を取得し複数の要素を連結させる方法知りたい 2 2022/06/02 12:06
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Ruby vscode 文字化け 1 2022/05/21 19:17
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Visual Basic(VBA) Worksheets メソッドは失敗しました。のエラー処理のやり方 4 2022/05/29 21:29
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptで .jpg , .jpeg , ....
-
別ウィンドウへのsubmitの挙動...
-
javascriptでASPにデータを渡す
-
フォームが空欄の時にフォーム...
-
複数Formから値を取得するやりかた
-
Cookieに保存されない
-
別窓ウィンドウから親ウィンド...
-
return trueとreturn falseの用...
-
slickのレスポンシブ > center...
-
セレクトを全て選択されていな...
-
iframe内のnameへ移動し、そこ...
-
tableの任意行にfocusをあてる
-
大文字か小文字かを判断する方法
-
function名の変更はできますか?
-
ラジオボタンにタブインデック...
-
【jsp/Java】チェックボックス...
-
Java Scriptで・・・
-
セレクトメニューの値の取得
-
Selectの中身をfor文で入れる
-
チェックボックス付きのテーブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
submitした値を返したい
-
別ウィンドウへのsubmitの挙動...
-
iframe内のformをサブミットす...
-
1つのページにformを2つ設置。2...
-
radiobuttonとbuttonを組み合わ...
-
JavaScript:現在フォーカスの...
-
Javascriptでlocation.hrefが妙...
-
C# 配列などの受け渡し
-
submitボタンを表示することな...
-
別窓ウィンドウから親ウィンド...
-
タブキーでなくエンターキーで...
-
inputのvalueを変数として使うには
-
フォームのvalueに配列を格納す...
-
FormのonsubmitでJavaスクリプ...
-
submitボタン押下後、disabled...
-
指定したタグを書き換えるには?
-
リンク先アドレスの一部にテキ...
-
enterについて2
-
フォームが空欄の時にフォーム...
-
ファイル選択と同時にアップロ...
おすすめ情報