私はしばらくの間、この問題に悩まされてきました。
ご注意ください。jqueryなし=/
私が持っているJSコードは次のとおりです
function highlight(){
var table = document.getElementById('dataTable');
for (var i=0;i < table.rows.length;i++){
table.rows[i].onclick= function () {
if(!this.hilite){
this.origColor=this.style.backgroundColor;
this.style.backgroundColor='#BCD4EC';
this.hilite = true;
}
else{
this.style.backgroundColor=this.origColor;
this.hilite = false;
}
}
}
}
HTMLは以下の通り
<table id="dataTable">
<tr onclick="highlight()"><td>Data1</td><td>Data2</td></tr>
<tr onclick="highlight()"><td>Data1</td><td>Data2</td></tr>
<tr onclick="highlight()"><td>Data1</td><td>Data2</td></tr>
</table>
現在、クリックすると色が変わりますが、2 番目の行をクリックすると、最初の行が強調表示されたままになります。jqueryなしでこのタスクを達成するのを手伝ってくれませんか?
ありがとうございました。