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

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

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

Q&A

解決済

1回答

275閲覧

form1にあるテキスト値をform3のPOSTから値のみ送信したい

kou___chan

総合スコア27

0グッド

0クリップ

投稿2022/01/18 13:27

html

1 <form method="POST" name="form1" id="form1" autocomplete="off"> 2 <label>最終回</label><font style="font-size: 36px"><?php echo $oll_number_lastdate[0]['no'];?></font> 3 <label>最終No</label><font style="font-size: 36px"><?php echo $oll_number_lastdate[0]['oll'];?></font><br> 4 <label>次期回</label> 5 <input type="text" class="col-3 display-6 text-center" id="next_no" name="next_no" style="font-size: 16px" value="<?php echo str_pad($oll_number_lastdate[0]['no']+1, 5, '0', STR_PAD_LEFT);;?>"><br> 6 <div class="form-group form-row" style="height: 100px;"> 7 <input type="number" class="col-3 display-6 daycolor1 text-center" id="no1" name="no1" maxlength="1" style="font-size:80px;" placeholder="" onchange="inputCheck1()"> 8 <input type="number" class="col-3 display-6 daycolor2 text-center" id="no2" name="no2" maxlength="1" style="font-size:80px;" placeholder="" onchange="inputCheck2()"> 9 <input type="number" class="col-3 display-6 daycolor3 text-center" id="no3" name="no3" maxlength="1" style="font-size:80px;" placeholder="" onchange="inputCheck3()"> 10 <input type="number" class="col-3 display-6 daycolor4 text-center" id="no4" name="no4" maxlength="1" style="font-size:80px;" placeholder="" onchange="inputCheck4()"> 11 </div> 12 <div class="col text-center"> 13 <!--<input type="button" class="btn btn-secondary btn-bg" onclick="submit();" id="update_deme" name="update_deme"value="登録">--> 14 <button type="button" class="btn btn-secondary btn-bg" id="update_deme"><font style="font-size: 16px">更新</font></button> 15 <input type="hidden" name="select_button" value="update_deme"> 16 <button type="button" class="btn btn-dark" id="deme_button" data-toggle="modal" data-target="#modal1">登録</button> 17 </div> 18 </form> 19 <div class="col text-center"> 20 <form method="POST" name="form3" id="form3" autocomplete="off"> 21 <button type="button" class="btn btn-info btn-bg" id="preview_deme"><font style="font-size: 16px">出目</font></button> 22 <input type="hidden" name="select_button" value="preview_deme"> 23 </form>

form1にあるinput textの値(no1,no2,no3,no4)の値を下のform3のボタン押下時にPOSTで飛ばしたいのですが、うまくいきません。

javascript

1 <script> 2 $(function () { 3 $("#deme_button").click( function() { 4 // テキストボックスのデータを取得します 5 var getData1 = String($("#no1").val()); 6 var getData2 = String($("#no2").val()); 7 var getData3 = String($("#no3").val()); 8 var getData4 = String($("#no4").val()); 9 var getData5 = String($("#last_no").val()); 10 var getData6 = String($("#next_no").val()); 11 // 取得データと追記文言をくっつけて出力します 12 $("#R_no1").val( getData1); 13 $("#R_no2").val( getData2); 14 $("#R_no3").val( getData3); 15 $("#R_no4").val( getData4); 16 $("#R_last_no").val( getData5); 17 $("#R_next_no").val( getData6); 18 }); 19 }); 20 </script>

javascriptでform1の値をモーダルのtextに反映することはできております

html

1 <input type="text" class="col-2 display-6 text-center" id="R_no1" name="R_no1" maxlength="1" style="font-size:80px;"> 2 <input type="text" class="col-2 display-6 text-center" id="R_no2" name="R_no2" maxlength="1" style="font-size:80px;"> 3 <input type="text" class="col-2 display-6 text-center" id="R_no3" name="R_no3" maxlength="1" style="font-size:80px;"> 4 <input type="text" class="col-2 display-6 text-center" id="R_no4" name="R_no4" maxlength="1" style="font-size:80px;">

が、form3については、わざわざinputtextを作成して飛ばさず、値のみ取得して飛ばすことはできないでしょうか

POSTについては下記のjavascriptから飛ばしております

javascript

1 <script> 2 var btn = document.getElementById('preview_deme'); 3 btn.addEventListener('click', function() { 4 var result = window.confirm('出目を表示しますか?'); 5 if( result ) { 6 document.form3.submit(); 7 console.log('実行しております…'); 8 } 9 else { 10 return false; 11 console.log('キャンセルします…'); 12 } 13 }) 14 </script>

ご教授のほど宜しくお願いいたします

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

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

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

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

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

guest

回答1

0

ベストアンサー

javascript

1<script> 2document.addEventListener('formdata', e=>{ 3 let n; 4 if(e.target.id && (n=document.querySelectorAll(`[data-${e.target.id}]`))){ 5 [...n].forEach(x=>{ 6 e.formData.append(x.name,x.value); 7 }); 8 } 9}); 10</script> 11<form id="f1"> 12<input name="a" value="1" data-f2 data-f3> 13<input name="b" value="2" data-f2> 14<input name="c" value="3" data-f3> 15</form> 16<form id="f2"> 17<input name="d" value="4"> 18<input type="submit" value="send"> 19</form> 20<form id="f3"> 21<input name="e" value="5"> 22<input type="submit" value="send"> 23</form>

投稿2022/01/19 00:30

yambejp

総合スコア114843

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

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

kou___chan

2022/01/19 05:25

yambejp 様 返信ありがとうごさいます。 理解するのに時間が掛かってしまいましたが何とかpost送信が出来ました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問