※ ChatGPTを利用し、要約された質問です(原文:クリック時、テーブルの行全体を色づけするには?)
テーブルの行全体を色づけする方法とIE6での問題
2005/11/10 15:00
このQ&Aのポイント
テーブル上でクリックされた行全体を色づけする方法について解説します。
ただし、ボタンやアンカーなどが含まれたセルがある場合には色づけができない問題があります。
また、IE6では一度クリックすると以降の行全体に対する色づけができなくなる現象が発生します。
テーブル上でクリックされたら、その行全体を色づけするようにしています。
一見問題なく動作するのですが、ボタンやアンカーなどが含まれたセルがあると、そこだけ色付けができません。
そのセルを一度もクリックしない間は良いのですが、一度でもクリックすると、その後は色づけされません。
セルの中身に関わらず、選択行全体が色づけできるようにするには、どうすればよいでしょうか?
IE6での現象です。
ご回答よろしくお願いします。
【HTML部分】
<table>
<tr onclick="rowsSelect()">
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td><input type="button" value="子画面" onclick="window.open();"></td>
</tr>
<tr onclick="rowsSelect()">
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td><input type="button" value="子画面" onclick="window.open();"></td>
</tr>
<tr onclick="rowsSelect()">
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td><input type="button" value="子画面" onclick="window.open();"></td>
</tr>
</table>
【JavaScript部分】
var selRow;
function rowsSelect() {
var r = event.srcElement.parentElement;
if(selRow!=null){
selRow.style.backgroundColor="#FFFFFF";
}
selRow=r;
r.style.backgroundColor="#FFDAB3";
}
質問の原文を閉じる
質問の原文を表示する
補足
おはようございます。 そうです、BLUEPIXYさまは見覚えがあるはず・・・笑 以前、ご回答頂いた質問に関連しています。 http://okwave.jp/kotaeru.php3?q=1747833 今回、JavaScriptによってテーブルの行が追加されるので、関数にパラメータは使いたくなかったのですが、以前教わったようにすれば(evalを使って関数を実行する方法)、大丈夫ですね。 この度もどうもありがとうございました!