• 締切済み

テキストボックスにいくつかのメッセージを表示させ、なおかつ個々のメッセージにリンクを張りたい

テキストボックスにいくつかのメッセージを表示させ、なおかつ個々のメッセージにリンクを張りたいのです。 以下のスクリプトでテキストボックスにメッセージを表示させることはできるのですが、リンクの張り方がわかりません。 よろしくご教授お願いいたします。 <SCRIPT LANGUAGE="JavaScript"> <!-- smes=new Array(5); smes[0]="111111"; smes[1]="222222"; smes[2]="333333"; smes[3]="444444"; smes[4]="555555"; n=0; function Some_Mes(){ document.myForm1.myMes.value=smes[n]; n++; if(n==5){n=0} setTimeout("Some_Mes()",5000); } //--> </SCRIPT> </head> <body onload="Some_Mes()" bgcolor="#FFFFFF" link="#000000" vlink="#000000" alink="#CCCCCC"> <FORM name="myForm1"> <INPUT type="text" name="myMes" size="50" style="text-align:center"> </FORM> </body>

みんなの回答

noname#199778
noname#199778
回答No.1

テキストボックスの中にHTMLの記述はできないと思いますので、テキストボックスでご質問のような動作を実現するのは無理だと思います。 代替案ですが、IE5.x以降、Netscape6以降などで導入されたDOMを利用した、以下のようなソースではいかがでしょうか。 <html> <head> <SCRIPT LANGUAGE="JavaScript"> <!-- smes=new Array(); smes[0]="111111"; smes[1]="222222"; smes[2]="333333"; smes[3]="444444"; smes[4]="555555"; slct= new Array(); slct[0]="***1.html"; slct[1]="***2.html"; slct[2]="***3.html"; slct[3]="***4.html"; slct[4]="***5.html"; /* 以上、リンク先のURLの配列 */ n=0; function Some_Mes(){ if (document.getElementById){ document.getElementById("lnk1").innerHTML=smes[n]; document.getElementById("lnk1").href=slct[n]; n++; if(n==5){n=0} setTimeout("Some_Mes()",5000); } } //--> </SCRIPT> </head> <body onload="Some_Mes()" bgcolor="#FFFFFF" link="#000000" vlink="#000000" alink="#CCCCCC"> <div id="lnkbox" style="border: 2px silver groove; text-align: center; width: 20em; height: 1em;padding: 1px; oveflow: hidden;"><a href="***1.html" id="lnk1">11111</a></div> </body> </html> 古いブラウザなどでは正常に反映されない可能性がありますが… 参考になれば。

関連するQ&A