Javascript getElementById と getElementByName は違います。
<input type="text" name="intext" id="intext" OnChange="StringAppend();"> <input type="text" name="ottext" id="ottext"> : function StringAppend() { var in=getElementById(intext); var ot=getElementById(ottext); ot.value = in.value + '_append String'; }これは動く。 けど、getElementById をまちがって getElementByName とやっちゃうと
<input type="text" name="intext" id="intext" OnChange="StringAppend();"> <input type="text" name="ottext" id="ottext"> : function StringAppend() { var in=getElementByName(intext); var ot=getElementByName(ottext); ot.value = in.value + '_append String'; }undefinedになります。 getElementById は、単数要素を取り出す場合で、 getElementByNameは、複数要素を取り出すために使います。 input タグは複数要素だけど、select などは複数要素だよね?ってこと。 ちなみにラジオボタンの場合
document.getElementsByName("rdo")[no].checked = true;と使います。
スポンサーリンク