OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

submitの分岐

  • すぐに回答を!
  • 質問No.183848
  • 閲覧数2416
  • ありがとう数5
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 95% (176/185)

同じform内に、ラジオボタンとサブミットボタンを配置してあります。
ラジオボタンを押された時は自分をsubmit、ボタンが押された時にはsubmitして次の画面へ遷移したいのですが、分岐の方法がわかりません。
<form action="next.htm" method="post">
とやってしまうと、ラジオボタンが押された時にもnext.htmへ遷移してしまいます。

苦慮の結果JavaScriptで、ボタンを押された時にhiddenにフラグをたてておいて、
そのフラグに値が入っていれば
<form method="post">、
入っていなければ<form action="next.htm" method="post">、
という分岐処理を書いたのですが、やはり両方next.htm画面へ遷移してしまいます。
お知恵を貸していただけないでしょうか。
ちなみに下記のようなスクリプトを書きました。

-----------------------------------------------
<script language="JavaScript1.2">
<!--
function chk_sub{
document.form.hdnChkFlg.value="1";
window.document.form.submit();
}
//-->
</script>

<if form.hdnChkFlg="1">
<form method="post">
<else>
<form action="next.htm" method="post">
<end if>

<input type="radio" name="chkSitei" checked onclick="return chk_sub value="1">aaa</input>

<input type="hidden" name="hdnChkFlg" value="">

<input type="submit" value="次へ">
</form>

宜しくお願いいたします。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル14

ベストアンサー率 50% (1122/2211)

Javascript で action って設定できますよ。試していないんですけど、こんな感じ。

function submit_by_radio() {
document.form.action = "自分のURL";
document.form.submit();
}
お礼コメント
sunnys

お礼率 95% (176/185)

こんばんは。回答ありがとうございます。
完璧です。
簡単なことだったんですね・・。
お恥ずかしいです。
この方法で解決できました。どうもありがとうございました。
投稿日時 - 2001-12-12 23:38:27
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1

ええと、私の勘違いや知識が足りないだけだったら済まないのですが、 </script>でスクリプト終了後に普通のHTMLで記述してますよね?HTMLでは<if>などというタグは無かったと言う風に条件分岐などは出来なかったと記憶していますが? HTMLはあくまで表記言語だと捕らえているので、プログラムなどの処理が必要な場合はCGIを呼び出して使ったりした方が確実ではないでしょうか? ...続きを読む
ええと、私の勘違いや知識が足りないだけだったら済まないのですが、
</script>でスクリプト終了後に普通のHTMLで記述してますよね?HTMLでは<if>などというタグは無かったと言う風に条件分岐などは出来なかったと記憶していますが?
HTMLはあくまで表記言語だと捕らえているので、プログラムなどの処理が必要な場合はCGIを呼び出して使ったりした方が確実ではないでしょうか?
補足、などありましたらまた考えさせて頂きます。
お礼コメント
sunnys

お礼率 95% (176/185)

こんばんわ。回答ありがとうございます。
おっしゃる通り、HTMLには<if>なんてタグは無いと思います。
実際はCGIを呼び出しているのですが、ここに全部書くとわかりにくくなると思い、
何をやっているのかの意味さえわかればいいかな、と思って<if>・・・と書いたのでした。
でも混乱させてしまっただけのようで、どうもすみませんでした。
また、何かあればまたよろしくお願い致します。
どうもありがとうございました。
投稿日時 - 2001-12-12 23:35:34


  • 回答No.3
レベル7

ベストアンサー率 64% (11/17)

1番の方が言われているように、質問の例では動かないと思います 書き方はいろいろあるとは思いますが、サンプルを書いときます。 <html> <head> <script type="text/javascript"> <!-- function setpage(name) { if(name=="") r ...続きを読む
1番の方が言われているように、質問の例では動かないと思います
書き方はいろいろあるとは思いますが、サンプルを書いときます。

<html>
<head>
<script type="text/javascript">
<!--
function setpage(name) {
if(name=="") return false;
document.frm.action=name;
return true;
}
//-->
</script>
</head>
<body>
<form name="frm" action="next.html" method="post">
<input type="radio" name="rd" value="1" onclick="if(setpage('this.html')) {document.frm.submit();}">Radio Button1<br>
<input type="radio" name="rd" value="2" onclick="if(setpage('this.html')) {document.frm.submit();}">Radio Button2<br>
<input type="submit" name="bt" value="Button">
</form>
</body>
</html>
お礼コメント
sunnys

お礼率 95% (176/185)

こんばんは。回答どうもありがとうございます。
私はJavaScriptはほとんどわからないのですが、色々な方法があるんですね。
勉強になります。何かの時には参考にさせていただきます。
どうもありがとうございました。
投稿日時 - 2001-12-12 23:40:01
  • 回答No.4
レベル10

ベストアンサー率 50% (72/143)

こんにちはsunnysさん、xruzです。 とりあえずテンプレートです。 なにかありましたら補足要求をお願いします。 <html> <head> <title>submit</title> </head> <script language="javascript"> <!-- funct ...続きを読む
こんにちはsunnysさん、xruzです。
とりあえずテンプレートです。
なにかありましたら補足要求をお願いします。

<html>
<head>
<title>submit</title>
</head>
<script language="javascript">
<!--
function frmSubmit() {
var errFlag=true;
// チェックとか処理とかをします
if(errFlag==false) {
// alert("Err"); // エラー処理かな
return;
}
if(confirm("Send Ok?")) {
// document.frm.target="main"; // 表示先の変更
// document.frm.action="hoge.asp"; // リンク先の変更。ここをifで条件分け?
document.frm.submit();
} else {
// this.location.href="jump.cgi"; // キャンセルした場合のリンク先
}
}
//-->
</script>
<body>

<form method="post" action="" name="frm" target="_self">

<input type="button" value="send" onclick="frmSubmit();">
</form>

</body>
</html>

がんばってくださいね(~:~i
お礼コメント
sunnys

お礼率 95% (176/185)

こんばんは。回答ありがとうございます。
エラー処理の仕方など、勉強になりました。
参考にさせていただきます。助かりました。
まだまだ勉強不足な為また質問させていただくことがあるかと思いますので、その時はまたよろしくお願い致します。
ありがとうございました。
投稿日時 - 2001-12-12 23:42:23
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ