プロが教えるわが家の防犯対策術!

【JavaScript】ラジオボタンにより、formのaction内容を変更したいのですが・・・。

どのラジオボタン(ここでは『A』と『B』とします)をチェックされたかにより、

<form action="(ここの部分)">

(ここの部分)と書かれたformのactionの内容を変えたいのです。

例)
『A』のラジオボタンをチェック → <form action="a.php">になる
『B』のラジオボタンをチェック → <form action="b.php">になる

このようにしたいのです。

どうかよろしくお願いします。

A 回答 (2件)

function gamenchange(){


if (document.myform.radio01.value=="1"){
document.myform.action="a.php";
}else{
document.myform.action="b.php";
}
document.myform.submit();
}

----------------------

<form action="#" method="post">
<input type="radio" name="radio01" value="1">ラジオボタンA
<input type="radio" name="radio01" value="2">ラジオボタンB
<input type="submit" onclick="gamenchange()">
</form>

----------------------

submitボタンを押したときにfunctionでaction先をセットする・・・のはいかがでしょう?
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
お蔭様で上手くページを分岐させることが出来ました。

実はheaderやinclude等を使おうともしていたのですが、
それだとpostの内容を渡すことが出来なかったもので・・・。

助かりました、本当にありがとうございました!

お礼日時:2010/06/29 16:01

onsubmitで処理するのが吉



<script>
function check(f){
var r=f.elements["r"];
var flg=false;
var list={"A":"a.php","B":"b.php","C":"c.php"};
for(var i=0;i<r.length;i++){
if(r[i].checked){
f.action=list[r[i].value];
flg=true;
break;
}
}
if(!flg) alert("チェックしてね")
return flg;
}
</script>
<form onSubmit="return check(this)">
<input type="radio" name="r" value="A">A
<input type="radio" name="r" value="B">B
<input type="radio" name="r" value="C">C
<input type="submit" value="go">
</form>
    • good
    • 1
この回答へのお礼

毎度毎度、ありがとうございます。
今回は、早く回答してくださった方にベストアンサーをつけさせていただきました。

yambejpさんのコードでも動作確認が出来ました。
ありがとうございました。

お礼日時:2010/06/29 16:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!