※ ChatGPTを利用し、要約された質問です(原文:ラジオボタンでフォームの送信先を切り替える)
ラジオボタンでフォームの送信先を切り替える
このQ&Aのポイント
ラジオボタンを使用して、フォームの送信先を切り替える方法について教えてください。現在、一方の送信ボタンはうまく切り替えられていますが、もう一方の送信ボタンが無効のままになることがあります。両方の送信ボタンを切り替えるためには、どのような記述が必要ですか?
ラジオボタンを使用して、フォームの送信先を切り替える方法について教えてください。一方の送信ボタンは正しく切り替えられますが、もう一方の送信ボタンは無効のままになってしまいます。両方の送信ボタンを切り替えるためのフォームの記述方法を教えてください。
ラジオボタンを使用して、フォームの送信先を切り替える方法について教えてください。現在、一方の送信ボタンは正しく切り替えられますが、もう一方の送信ボタンが無効のままになる場合があります。両方の送信ボタンを切り替える方法を教えてください。
<script type="text/javascript">
<!--
function setDisabledTextbox(F,N1,N2,N3) {
if(N1 == "OrderPayment0") {
F[N2].disabled = true;
F[N3].disabled = false;
}
else {
F[N2].disabled = false;
F[N3].disabled = true;
}
}
//-->
</script>
//フォームの1の記述
<form method="post" action="送信先1">
//ラジオボタン1の記述
<input type="radio" name="payment1" value="値1" onclick="setDisabledTextbox(this.form,this.id,'tbox0','tbox1')" <?php if($payment_name == "値1") echo "checked"; ?> id="OrderPayment0" />
<label for="OrderPayment0">値1</label><br />
//ラジオボタン2の記述
<input type="radio" name="payment2" value="値2" onclick="setDisabledTextbox(this.form,this.id,'tbox0','tbox1')" <?php if($payment_name == "値2") echo "checked"; ?> id="OrderPayment1" />
<label for="OrderPayment1">値2</label><br />
送信1の入力フォームの記述
<input type="submit" name="tbox0" value="送信1" disabled />
</form>
//フォームの2の記述
<form method="post" action="送信先2">
送信2の入力フォームの記述
<input type="submit" name="tbox1" value="送信2" disabled />
</form>
上記の記述で、最初、送信ボタン1及び送信ボタン2をdisabled状態にしておいて、ラジオボタンの1が押されたら送信ボタンの1を活性化、ラジオボタンの2を押したら送信ボタンの2を活性化するというように切り替えたいのですが、今のところ送信ボタンの1の切り替えはうまくいっているのですが、送信ボタンの2の方がdisabledされたままにまります。フォームの有効範囲の問題かな?と思って、ラジオボタンの2の記述をフォームの2の記述の方に移してみたりしたのですが、結果は同じようです。
両方とも切り替えるようにするには、どのように記述すればよいのでしょうか?
御教示願えればと思います。
お礼
御指摘、ありがとうございました。 <script type="text/javascript"> <!-- function setDisabledTextbox(F1,F2,ID,N1,N2) { if(ID == "OrderPayment0") { F2[N2].disabled = false; F1[N1].disabled = true; } else { F2[N2].disabled = true; F1[N1].disabled = false; } } //--> </script> //フォームの1の記述 <form method="post" action="送信先1"> //ラジオボタン1の記述 <input type="radio" name="data[Order][payment]" value="値1" onclick="setDisabledTextbox(document.forms[0],document.forms[1],this.id,'tbox0','tbox1')" <?php if($payment_name == "値1") echo "checked"; ?> id="OrderPayment0" /> <label for="OrderPayment0">値1</label><br /> //ラジオボタン2の記述 <input type="radio" name="data[Order][payment]" value="値2" onclick="setDisabledTextbox(document.forms[0],document.forms[1],this.id,'tbox0','tbox1')" <?php if($payment_name == "値2") echo "checked"; ?> id="OrderPayment1" /> <label for="OrderPayment1">値2</label><br /> 送信1の入力フォームの記述 <input type="submit" name="tbox0" value="送信1" disabled /> </form> //フォームの2の記述 <form method="post" action="送信先2"> 送信2の入力フォームの記述 <input type="submit" name="tbox1" value="送信2" disabled /> </form> でうまくいくようになりました。