การทำไฮไลท์แถวในตาราง ก็เพื่อให้ยูสเซ่อร์มองได้สะดวก เมื่อข้อมูลมันเยอะๆ ผลลัพธ์จะเป็นดังภาพครับ

Live Demo

มาดูกันครับว่าทำอย่างไร

โครงสร้าง HTML :

<table id="table">
<tr>
<th>ลำดับ</th>
<th>สาขา</th>
</tr>
<tr class='even' >
<td>1</td>
<td>สุรวงศ์</td>
</tr>
<tr  class='odd' >
<td>2</td>
<td>เพชรบุรีตัดใหม่</td>
</tr>
<tr class='even' >
<td>3</td>
<td>รามอินทราทีมA</td>
</tr>
</table>


ตกแต่งตารางด้วย CSS:

/* ใช้เพื่อแต่งตารางให้ดูดี */
#table .odd td {
background:#eee;
border-top:1px solid #DDDDDD;
padding:3px;
}
#table .even td {
border-top:1px solid #DDDDDD;
padding:3px;
}
/* เตรียมไว้ทำไฮไลท์ ด้วย jQuery */
.highlight td {
background:#FFFFCC !important;
}

ถ้าไม่เซตลงไปถึง td ie6 มันจะไม่ยอมแสดงผล

หลังจากนั้น include jQuery เข้ามา

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

เขียนโค้ดให้มันไฮไลท์ตอนเอาเมาส์ชี้เหนือแถว และกลับไปเหมือนเดิม เมื่อเมาส์ผ่านไป

$(function(){
//+ highlight row
$('#table tr').mouseover(function(){
 
$(this).toggleClass('highlight');
 
});
$('#table tr').mouseout(function(){
 
$(this).toggleClass('highlight');
 
});
 
})

โค้ดทั้งหมดจะเป็นดังนี้

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<title>Highlight row</title>
<style>
/* ใช้เพื่อแต่งตารางให้ดูดี */
#table .odd td {
background:#eee;
border-top:1px solid #DDDDDD;
padding:3px;
}
#table .even td {
border-top:1px solid #DDDDDD;
padding:3px;
}
 
/* เตรียมไว้ทำไฮไลท์ ด้วย jQuery */
.highlight td {
background:#FFFFCC !important;
}
</style>
<script type="text/javascript">
$(function(){
//+ highlight row
$('#table tr').mouseover(function(){
 
$(this).toggleClass('highlight');
 
});
$('#table tr').mouseout(function(){
 
$(this).toggleClass('highlight');
 
});
 
})	
</script>
</head>
<body>
<table id="table">
<tr>
<th>ลำดับ</th>
<th>สาขา</th>
</tr>
<tr class='even' >
<td>1</td>
<td>สุรวงศ์</td>
</tr>
<tr  class='odd' >
<td>2</td>
<td>เพชรบุรีตัดใหม่</td>
</tr>
<tr class='even' >
<td>3</td>
<td>รามอินทราทีมA</td>
</tr>
</table>
</body>
</html>