こんにちは,よろしくお願いします。
ラジオボタンの値でテキストフィールドのような要素をdisabledにしようと考えています。
そこで
<input name="AAA" type="radio" id="AAA_0" value="0" checked="checked" onclick="xxx()"/>選択肢A
<input name="AAA" type="radio" id="AAA_1" value="1" onclick="xxx()"/>選択肢B
とし,javascriptのxxx functionの中では,
if(document.getElementById("AAA").value == 0){
document.getElementById("BBB").disabled = true;
}else if(document.getElementById("AAA").value == 1){
document.getElementById("BBB").disabled = false;
}
}
としてみたところ,いつも document.getElementById("AAA").value の値が0のままでいくら選択肢Bをクリックしても切り替わりません。
一体何が悪いのでしょうか。教えてください。よろしくお願い申し上げます。
No.5ベストアンサー
- 回答日時:
> document.getElementById("AAA").value
"AAA"となっているのはname属性ですけど...。
> ラジオボタンの値でテキストフィールドのような要素をdisabledに
> しようと考えています。
テキストフィールドのような要素とは?
> document.getElementById("BBB")
"BBB"というid属性がついているフォームがあるのでしょうか。
こんな感じで書いてみました。
試していないので動作するかどうかは分かりません。
var radio = document.getElementsByName('AAA');
for(var i = 0; i < radio.length; i++) {
if(radio[i].checked) {
document.getElementById('BBB').disabled = i \ 2 ? false : true;
}
}
5件の回答をいただき,ありがとうございました。
皆さんのご指導を参考にして次のように解決しました。
本当にありがとうございました。
javascriptでは,
function xxx(){
if(document.f1.AAA[0]checked){
document.getElementById("BBB").disabled = true;
}else if(document.f1.AAA[1]checked){
document.getElementById("BBB").disabled = false;
}
}
<form action="#" method="post" name="f1" id="f1">
<input name="AAA" type="radio" id="AAA_0" value="0" checked="checked" onclick="xxx()"/><label for="AAA_0">選択肢A</label>
<input name="AAA" type="radio" id="AAA_1" value="1" onclick="xxx()"/><label for="AAA_1">選択肢B</label>
<input type="text" name="BBB" value="" />
</form>
以上です。
御回答いただいた方々にそれぞれお礼すべきところですが,ここにまとめて記載させていただきました。あしからずご了承ください。
またよろしくお願いします。ありがとうございました。
No.3
- 回答日時:
択一なのであれば、elseはいらないかもしれませんね。
またthisをつかえばすっきりします。
<script>
function xxx(obj){
var f=obj.form;
f.elements["BBB"].disabled=(obj.value != "0");
}
</script>
<form>
<input name="AAA" type="radio" id="AAA_0" value="0" checked="checked" onclick="xxx(this)"/><label for="AAA_0">選択肢A</label>
<input name="AAA" type="radio" id="AAA_1" value="1" onclick="xxx(this)"/><label for="AAA_1">選択肢B</label><br />
項目BBB:<input name="BBB" type="text" />
</form>
yambejpさん,御回答ありがとうございました。
お礼は ANo.5 にまとめて掲載させていただきました。これからもよろしくお願いもうしあげます。
No.2
- 回答日時:
<input name="AAA" type="radio" checked onClick="document.getElementById('BBB').disabled = true">選択肢A
<input name="AAA" type="radio" onClick="document.getElementById('BBB').disabled = false">選択肢B
もしくは、
<input name="AAA" type="radio" value="true" checked onClick="test(this.balue)">選択肢A
<input name="AAA" type="radio" value="false" onClick="test(this.balue)">選択肢B
function test(v){ document.getElementById('BBB').disabled=v;}
_pipi_さん,御回答ありがとうございました。
お礼は ANo.5 にまとめて掲載させていただきました。これからもよろしくお願いもうしあげます。
No.1
- 回答日時:
ところでnameとidが一致してないのはなんで?
http://homepage3.nifty.com/aya_js/js2/js217.htm
簡単に言うと選択されている数値ではなくチェックされているのかを調べる。
SAYKAさん,御回答ありがとうございました。
お礼は ANo.5 にまとめて掲載させていただきました。これからもよろしくお願いもうしあげます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
リンク文字クリックでラジオボ...
-
ラジオボタンのチェック数に応...
-
jQuery 変数の使い方について
-
データベースの値を判断してラ...
-
次の事項をJavaScriptで作成す...
-
ラジオボタンのチェックが外れ...
-
(jQuery)ラジオボタン選択値を...
-
ラジオボタンの値でリンク先を...
-
オブジェクト名に変数を使いたい
-
ラジオボタンで入力フィールド...
-
複数のラジオボタンのチェック
-
クイズの正解(○×)をテキスト...
-
return trueとreturn falseの用...
-
<JavaScript>tableタグを入力不...
-
プルダウン 項目が多いので先頭...
-
JavaScriptde途中で、「exit」...
-
submitした値を返したい
-
【jQuery】input nameの文字列...
-
テキストボックスの値同士を比...
-
ボタン2回押しを無効にしたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラジオボタンにタブインデック...
-
データベースの値を判断してラ...
-
ラジオボタンのチェックが外れ...
-
ラジオボタンの値でリンク先を...
-
javascript作成してます。ラジ...
-
ラジオボタン未チェックの場合...
-
チェックされたラジオボタンに...
-
jQueryで複数のラジオボタンを処理
-
チェックボックスのON/OFFに連...
-
radio選択をクッキーに保存させ...
-
フォームPOST後「戻る」時のチ...
-
JavaScript ラジオボタン デ...
-
JavaScriptでラジオボタンのチ...
-
ラジオボタンでdisabledとchecked
-
ラジオボタンのリセット方法
-
js radioボタンの「name」を多...
-
リセットボタンでクリアできな...
-
VBA IE ラジオボタンに...
-
ラジオボタンで選択した項目の...
-
ラジオボタンとif文
おすすめ情報