form内の、submitボタンの値が拾えません。
1つだけsubmitボタンを設置すると値が拾えますが、
2つ以上submitボタンを設置すると拾えません。
仕様上、無理なのでしょうか?
<SCRIPT language="JavaScript">
function move_post(){
alert(document.frmMvPost.btn.value);
}
</SCRIPT>
<FORM name="frmMvPost" action="" method="post" onsubmit="return move_post()">
<INPUT type="submit" name="btn" value="テスト1">
<INPUT type="submit" name="btn" value="テスト2">
<INPUT type="submit" name="btn" value="テスト3">
</form>
No.2ベストアンサー
- 回答日時:
> alert(document.frmMvPost.btn.value);
btnというオブジェクトが複数あるため、btnは配列になってしまうため、
document.frmMvPost.btn.valueでは値が取れません。
回避策はonClickイベントにて値をHiddenへ格納すればOKです。
_____________________________________________________________
<SCRIPT language="JavaScript">
function move_post(){
alert(document.frmMvPost.onbtn.value);
}
function set_value(s_val)
{
document.frmMvPost.onbtn.value = s_val;
}
</SCRIPT>
<FORM name="frmMvPost" action="" method="post" onsubmit="return move_post()">
<INPUT type="submit" name="btn" value="テスト1" onClick="set_value('テスト1')">
<INPUT type="submit" name="btn" value="テスト2" onClick="set_value('テスト2')">
<INPUT type="submit" name="btn" value="テスト3" onClick="set_value('テスト3')">
<INPUT type="hidden" name="onbtn">
</form>
_____________________________________________________________
※テストしていないため動作は保証しません。問題ある場合にはお手数ですが何かしら手を加えてください。
No.3
- 回答日時:
"submit"を"button"にしてonclickイベントでmove_post()を呼び出し、event.srcElement.valueで取得する。
てのは?(submitするときはmove_post()にフォーム名.submit();を記述)
<SCRIPT language="JavaScript">
function move_post()
{
alert(event.srcElement.value);
//frmMvPost.submit();
}
</SCRIPT>
<FORM name="frmMvPost" action="" method="post">
<INPUT type="button" name="btn" value="テスト1" onclick="move_post();">
<INPUT type="button" name="btn" value="テスト2" onclick="move_post();">
<INPUT type="button" name="btn" value="テスト3" onclick="move_post();">
</form>
IEであれば動作しました。event.srcElement.valueというのは勉強になりました。IE限定の時は是非とも使いたいと思います。ありがとうございました。
No.1
- 回答日時:
多分、submitボタンに与えているname属性の値が重複しているので、狙ったような動作が得られないのではないでしょうか。
name属性をそれぞれ別々の値に設定すれば、動作すると思います。もし参照するフォーム部品の名前をbtnに統一しなければうまくないという場合は、隠しフィールドを用意してそこにそのフォーム部品の名前を与え、submit時に隠しフィールドに各ボタンの値を渡して、その隠しフィールドの方の値を取得させるような形に修正するのも対策になるかもしれません。
formの部分のソースを
<FORM name="frmMvPost" action="" method="post" onsubmit="return move_post()">
<INPUT type="submit" value="テスト1" onClick="document.frmMvPost.btn.value=this.value;">
<INPUT type="submit" value="テスト2" onClick="document.frmMvPost.btn.value=this.value;">
<INPUT type="submit" value="テスト3" onClick="document.frmMvPost.btn.value=this.value;">
<input type="hidden" name="btn">
</form>
このようにしてみてはいかがでしょうか。
参考になれば幸いです。 見当違いでしたら、ごめんなさい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
複数のSubmitボタンをname属性によって見分けるには?
JavaScript
-
Javascriptでのbuttonのname属性、もしくはid属性を取得
JavaScript
-
フォーム上で押されたボタンによってサーブレットの処理を変えたい
Java
-
-
4
どのボタンが押されたかの判定
HTML・CSS
-
5
onClickとsubmitの処理順序
JavaScript
-
6
tableタグとformタグの組み合わせ
HTML・CSS
-
7
Javascriptの値をJava(JSP)へ渡す方法
Java
-
8
Javascript_submit()完了後に処理したい
JavaScript
-
9
テーブルタグの中にdivを含めてはダメ?
HTML・CSS
-
10
submitボタンにvalue属性の値でないラベルを表示したい
HTML・CSS
-
11
FormのonsubmitでJavaスクリプトを複数使えますか
JavaScript
-
12
フォームで同じ複数のnameで違うvalueの送信
Java
-
13
JSPからServletへの遷移
Java
-
14
PHP ボタンが押されたら処理を実行する
PHP
-
15
リンクでPOSTデータを送信することは可能ですか?
HTML・CSS
-
16
ボタンの値を取得したい
JavaScript
-
17
<input type=hidden" >で配列(複数の要素)を渡したいとき?"
PHP
-
18
外部キーだけのテーブル(主キーがない?)
その他(データベース)
-
19
TABLEのセルの中の文字を行単位、セル単位で色を変えたい
HTML・CSS
-
20
セレクトメニューで2つの項目や値を渡す方法はありますか?
HTML・CSS
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
value内に変数を入れたい
-
hiddenのvalueの値を変えたい
-
テキストボックスに入力された...
-
javascriptでhiddenに二次元配...
-
ラジオボタン、チェックボック...
-
Kintone(キントーン)でドロップ...
-
jsで、配列内の文章を改行する...
-
JavaScriptによる自動計算フォ...
-
複数のsubmitボタンで押された...
-
セレクトボックスの初期選択状...
-
3桁区切りのカンマをつけたい...
-
テキストエリア内容からチェッ...
-
日付選択のポップアップを今日...
-
name属性が同じフォームが複数...
-
ラジオボタンの値を関数へわた...
-
チェックボックスがundefinedと...
-
フォームで入力した値を別のフ...
-
return trueとreturn falseの用...
-
Selectボックスの幅を自動で広...
-
【jsp/Java】チェックボックス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
value内に変数を入れたい
-
hiddenのvalueの値を変えたい
-
3桁区切りのカンマをつけたい...
-
VB.NET DateTimeの型について
-
複数のsubmitボタンで押された...
-
テキストボックスに入力された...
-
フォーム内容を上から順番にJav...
-
VBAをJavaScriptに変換したいです
-
javascriptでhiddenに二次元配...
-
大量のselect要素のvalueを短い...
-
フォームで入力した値を別のフ...
-
プルダウン選択時、既に入力済...
-
ラジオボタンと連動して文字列...
-
引数に数値、文字列の混在
-
クイズ作成:15個の問題から5個...
-
クリックの度に加算していくには?
-
setIntervalの間隔を途中で変更...
-
Pythonで会員サイトの自動ログ...
-
selectboxのoptionタグのvalue...
-
JavaScriptによる自動計算フォ...
おすすめ情報