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

ラジオボタンA,Bの2つがあり、Aを押したら
メッセージ1を、Bを押したらメッセージ2を、
ラジオボタンのすぐ横に表示させたいのですが、
私の探したJavaScriptのサンプルにはありませんでした。
どのようにしたら表示されるか、教えてください。
お願いいたします。

A 回答 (3件)

<html>


<head>
<script language="javascript">
<!--
function rdo(n){
var m=document.f.r.length - 0;
var j=n.value;
if(n.checked){
for(i=0;m>i;i++){
var k=""+i;
document.getElementById(k).style.display="none";
}
document.getElementById(j).style.display="inline";
}
}
//-->
</script>
</head>
<body>
<form name="f" id="f">
<input type="radio" name="r" id="r" value="0" onClick="rdo(this);">A:
<input type="radio" name="r" id="r" value="1" onClick="rdo(this);">B:
<span name="0" id="0" style="display:none;">Message.1</span><span name="1" id="1" style="display:none;">Message.2</span>
</form>
</body>
</html>

回答その.2

ブロック要素としての表示(display=block)からインライン要素としての表示(display=inline)に変更し、かつ、フォーム要素の中にメッセージを入れたところ、無事に「横に表示」出来るようになりました。
    • good
    • 0
この回答へのお礼

ありがとうございます。大変参考になりました。

お礼日時:2002/12/11 10:44

<html>


<head>
<script language="javascript">
<!--
function rdo(n){
var m=document.f.r.length - 0;
var j=n.value;
if(n.checked){
for(i=0;m>i;i++){
var k=""+i;
document.getElementById(k).style.display="none";
}
document.getElementById(j).style.display="block";
}
}
//-->
</script>
</head>
<body>
<form name="f" id="f">
<input type="radio" name="r" id="r" value="0" onClick="rdo(this);">A:
<input type="radio" name="r" id="r" value="1" onClick="rdo(this);">B:
</form>
<div style="position:absolute; left:100; top:20;">
<span name="0" id="0" style="display:none;">Message.1</span>
<span name="1" id="1" style="display:none;">Message.2</span>
</div>
</body>
</html>

メッセージ表示位置(divタグ)の left、top は、必要に応じて適宜調整してください。
    • good
    • 0

「すぐ横」ってのは良く分からないけど、こんな感じ?



> <html>
> <SCRIPT LANGUAGE='JavaScript'>
> function oncli_rad(idx){
> if (idx==1){
> window.text1.value = "iti";
> }else{
> window.text1.value = "ni";
> }
> }
> </script>
> <body>
> <input type=radio name=radio0 Onclick="oncli_rad(1)">1<br>
> <input type=radio name=radio0 Onclick="oncli_rad(2)">2<br>
> <input type=text name=text1 value="">
> </body>
> </html>
    • good
    • 0
この回答へのお礼

ありがとうございます。参考になりました。

お礼日時:2002/12/11 10:41

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