クリックした行の背景色の変更
以下のスクリプトは
【クリックした行の背景色を変更し、ハイライトさせる】
ものです。
このスクリプトに追加したい動作があるのですが、なかなかよい方法が思いつきません。
<追加項目>
・表以外でクリックすると行の背景色をやめる。
それと同時にテキストボックスもクリアする。
何かよい方法はないでしょうか?
<html>
<head>
<script>
var preEl ;
var orgBColor;
var orgTColor;
function HighLightTR(backColor,textColor,name,ken){
if(typeof(preEl)!='undefined') {
preEl.bgColor=orgBColor;
try{ChangeTextColor(preEl,orgTColor);}catch(e){;}
}
var el = event.srcElement;
el = el.parentElement;
orgBColor = el.bgColor;
orgTColor = el.style.color;
el.bgColor=backColor;
try{ChangeTextColor(el,textColor);}catch(e){;}
preEl = el;
document.form1.test1.value=name;
document.form1.test2.value=ken;
}
function ChangeTextColor(a_obj,a_color){ ;
for (i=0;i<a_obj.cells.length;i++){
a_obj.cells(i).style.color=a_color;
}
}
</script>
</head>
<body>
<table border=1 align=center>
<th>氏名</th>
<th>住所</th>
<tr onClick="HighLightTR('yellow','blue','山田太郎','東京都');" >
<td align=right>山田太郎</td>
<td align=right>東京都</td>
</tr>
<tr onClick="HighLightTR('yellow','blue','山本浩二','埼玉県');" >
<td align=right>山本浩二</td>
<td align=right>埼玉県</td>
</tr>
</table>
<form name="form1" method="post" action="">
<input type="text" name="test1">
<input type="text" name="test2">
</form>
</body>
</html>
お礼
回答ありがとうございました。 テーブルは使っていましたが、平文の方法がわからずにいました。 これで、作業が楽になります。 #これがわかならいまま早1年 (^^;