ここから本文です

<label>タグのforで指定した名前で操作したい。

kom********さん

2012/11/2113:25:16

<label>タグのforで指定した名前で操作したい。

<label for="firstname">aaa</label>
などとあったとき、この"firstname"で指定して、labelタグにclassを追加したいのですが、そのような事は可能でしょうか。
一応、prototype.jsを使用していますが、素のJavaScriptでも結構です。

ご存知の方、いらっしゃいましたらご教授願います。

閲覧数:
203
回答数:
1

違反報告

ベストアンサーに選ばれた回答

niikoujpさん

2012/11/2116:42:29

こんな感じでいかがですか。
とりあえずクラス名は、"C1"として、
HTML起動時にinit関数内でlabelタグにclassを設定しています。



<style type="text/css">
<!--
.C1{
background-color : yellow;
}
-->
</style>


<SCRIPT language="JavaScript">
function init(){
//HTMLのラベル全部を取得
var obj=document.getElementsByTagName("label");
var i;
for(i=0;i<obj.length;i++){
//ラベルのFORを参照
var c=obj[i].htmlFor;
if(c=="firstname"){
//FORが合致したならクラス名を設定する
obj[i].className="C1";
}
}
}
</SCRIPT>

<body onload="init();">
<form>
<LABEL for="firstname">AAA</LABEL>
<input size="20" type="text" id="firstname" name="firstname"><br>
<LABEL for="lastname">BBB</LABEL>
<input size="20" type="text" id="lastname" name="lastname"><br>
</form>
</body>

質問した人からのコメント

2012/11/28 09:02:42

降参 ありがとうございました。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる