選択したたラジオボタンの値をSUBMITボタンの名前として自動的に替えたいのですが、助言をいただけますか。
イメージは下記です。★の部分に、クリックごとにradioの値を入れたいのです。

<script Language="JavaScript"><!--
function set()
{
n = document.myFORM.Radio.value;
}
// -->
</script>
<FORM ACTION="add.cgi" METHOD="POST" name="myFORM">
<INPUT TYPE="RADIO" NAME="Radio" VALUE="東京" onclick="set()" CHECKED>
<INPUT TYPE="RADIO" NAME="Radio" VALUE="大阪">
<INPUT TYPE="SUBMIT" NAME="Submit" VALUE="★"></form>

このQ&Aに関連する最新のQ&A

A 回答 (1件)

Win98 + IE5.5SP1で試してみました。


どうもType=Radioの時は、Submit前はname属性でデータを指定してもUndefinedにしかならないようなので、この場合はelements[]配列を使うのが良さそうです。

ちなみに下記のHTMLだと、画面に最初に表示された時の初期値はBodyタグのonLoadで関数を呼び出して初期化してます。

<html>
<head>
<script Language="JavaScript">
<!--
function set( n ) {
document.myFORM.Submit.value = document.myFORM.elements[n].value;
}
// -->
</script>
</head>
<body onLoad="set(0);">
<FORM ACTION="add.cgi" METHOD="POST" name="myFORM">
<INPUT TYPE="RADIO" NAME="Radio" VALUE="東京" onClick="set(0);" CHECKED>
<INPUT TYPE="RADIO" NAME="Radio" VALUE="大阪" onClick="set(1);">
<INPUT TYPE="SUBMIT" NAME="Submit" VALUE="★">
</form>
</body>
</html>
    • good
    • 0
この回答へのお礼

回答ありがとうございました。回答前にいくつか試したら「Undefined」が出てきて意味がわかりませんでしたが、回答で意味が少しわかりました。おかげさまで、目的の動作確認ができました。

#送信時に選択内容を確認するための部品として活用させていただきます。
#javascript初心者ですが勉強になります。

お礼日時:2001/04/22 19:38

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q

<input type="hidden" name = "hoge">があったとします。
これを、javascriptを使用し nameで検索します。
”hoge”を検索後、その”hoge”という名前を変更する方法を探しています。 

<input type="hidden" name = "hoge">
       ↓↓↓↓↓
<input type="hidden" name = "fuga"> 

リフレッシュ無しで、上記のようにnameを変える方法が知りたいです。

ご存知の方おりましたら、お手数ですが教えていただけませんでしょうか。
宜しくお願いいたします。

Aベストアンサー

タグが特定出来れば、setAttribute等で属性値を変更出来ます。
setAttribute("name","fuga")

Qで、Q1に後で値を設定して表示するには

お世話になります。
<input type="text" name="Q1">で、Q1に後で値を設定して表示するにはどうしたら良いものでしょうか。
name="Q1"
と、しているので、
onMousedown="function()"
で、nameでしてしたエリアに値を書き込めば、できると思うのですが、
このfunction()をどのように書いたらよいものか、いろいろ調べてもわかりません。
何とかご教示願えないでしょうか。
よろしくお願いします。

Aベストアンサー

javascriptを利用することで出来ます。
こんな感じで動くでしょう。
ちなみにテキストボックスなどをjavascriptで操作する場合は
idをつけておくと便利です。

これ以上をやりたいというのであれば
参考URLなど見て勉強してみてください
<html>
<head>

</head>
<body>

<input type="text" id="Q1" name="Q1" onmousedown="hoge()">
</body>
<script type='text/javascript'>
function hoge()
{
Q1.value = ""; //""のなかに設定する値
}
</script>

参考URL:http://www.parkcity.ne.jp/~chaichan/src/javasc21.htm

Qで画像を選択

HTMLのページ内で<input type="file">で画像を選択して
その画像を現在のHTMLページに表示する
という質問のベストアンサー
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1151913361

にしたがって、使ってみましたが、表示されません。
使い方のどこがまちがっているか教えてください。

また、そこにある動作サンプルが見えません。
動作サンプルを見る方法もわかりましたら、お願いします。

--------------------------
<html lang="ja">
<head>
<title></title>
<script type="text/javascript">

function dispImg() {
var myFile = document.getElementById('ans5');
var src = null;
if (window.File) {
src = myFile.files[0].getAsDataURL();
} else {
src = myFile.value;
}
document.getElementById('DISP').src = src;
}
</script>
</head>
<body>

<form name ="a">

写真を指定してください:
<input type="file" name="ans5" Onchange="dispImg();"><br>
<img src="" alt="" id="DISP">
</form>

</body>
</html>

HTMLのページ内で<input type="file">で画像を選択して
その画像を現在のHTMLページに表示する
という質問のベストアンサー
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1151913361

にしたがって、使ってみましたが、表示されません。
使い方のどこがまちがっているか教えてください。

また、そこにある動作サンプルが見えません。
動作サンプルを見る方法もわかりましたら、お願いします。

--------------------------
<html lang="ja">
<head>
<title></title>
<script type="text/javascript...続きを読む

Aベストアンサー

非標準のメソッドが使われています。
Fileを扱うためには基本FileReaderを使わなければなりません。
それよりもっといいのが、BlobURL化することです。

写真を指定してください:
<form>
<input type=file onChange="this.form.disp.src=window.URL.createObjectURL(this.files[0])">
<br><img name=disp>
</form>

Qで条件分岐

<input type="file">で、送信ボタンをクリックする前に、下記のようなことをしたいです。
どうやるのでしょうか?

■A
・ファイルを選択したかどうか、の条件分岐

■B
・選択したファイル名を、JavaScript変数へ格納

Aベストアンサー

ファイルはinput.filesに入っています。
var file = input.files[0]
if (file)
とかで分かります。

Qでボタンを押したときの処理

ボタンをクリックしたらalertによって下記のような文字列、trueかfalseを返すようにしたいのです。

fulction hantei(){

if(str.length > 6){
document.write("true")
}
else{
document.write("false")
}
}

あと、functionにはdocument.writeが使えないようなのですが、そうならばどのようにして表示させるのでしょう?

よろしくお願いします。

Aベストアンサー

"alertによって"の表現が、どうにでもとれます。
「警告ダイアログを表示させたい」という意味であれば、#1の方の説明の通りです。
画面上のどこか文字列を変更したいならば、document.all(ID) と innerHTMLを利用できます。ただしNetscapeでは、4.x系も、7.x系も効きません。Opera、Firefoxを有効なようですね。

以下にサンプル

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>てすと</title>
<script type="text/javascript">
<!--
function func(message)
{
 var targetItem = document.all("alertTarget");
 targetItem.innerHTML = message;
}
// -->
</script>
</head>
<body>
<form target=".">
<span id="alertTarget"></span><br>
<input type="button" value="alert A" onclick="func('aaaa')">
<input type="button" value="alert B" onclick="func('bbbb')">
</form>
</body>
</html>

"alertによって"の表現が、どうにでもとれます。
「警告ダイアログを表示させたい」という意味であれば、#1の方の説明の通りです。
画面上のどこか文字列を変更したいならば、document.all(ID) と innerHTMLを利用できます。ただしNetscapeでは、4.x系も、7.x系も効きません。Opera、Firefoxを有効なようですね。

以下にサンプル

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="Content-Script-Type" content="text/javascript">
<me...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報