Мой первый пример - следующая структура таблицы:
<table>
<col id="name" />
<col id="score" />
<thead>
<tr>
<th>Name</th>
<th>Score</th>
</tr>
</thead>
<tbody>
<tr>
<td>Allan, Paul</td>
<td>28</td>
</tr>
<tr>
<td>Bartlett, James</td>
<td>33</td>
</tr>
<tr>
<td>Callow, Simon</td>
<td>25</td>
</tr>
<tr>
<td>Dennis, Mark</td>
<td>19</td>
</tr>
<tr>
<td>Ennals, Simon</td>
<td>10</td>
</tr>
<tr>
<td>Finnegan, Seamus</td>
<td>21</td>
</tr>
</tbody>
</table>
css:
table {
width: 20em;
}
#score {
width: 50%;
}
#name {
width: 50%;
}
th {
border-bottom: 2px solid #000;
padding: 0.5em 0 0.1em 0;
font-size: 1.2em;
}
td {
border-bottom: 2px solid #ccc;
padding: 0.5em 0 0.1em 0;
}
th:nth-child(even),
td:nth-child(even) {
text-align: center;
}
.vGood {
background-color: #0f0;
}
.good {
background-color: #0c0;
}
.avg {
background-color: #060;
}
.poor {
background-color: #c00;
}
.vPoor {
background-color: #f00;
}
и jQuery:
$('tbody tr td:not(":first")').each(
function() {
var vGood = 30,
good = 25,
avg = 20,
poor = 15,
vPoor = 10,
score = $(this).text();
if (score >= vGood) {
$(this).addClass('vGood');
}
else if (score < vGood && score >= good) {
$(this).addClass('good');
}
else if (score <good && score >= avg) {
$(this).addClass('avg');
}
else if (score < avg&& score >= poor) {
$(this).addClass('poor');
}
else if (score < poor) {
$(this).addClass('vPoor');
}
});
Демонстрация JS Fiddle .
Это, конечно, метод грубой силы.Это будет работать, но это не самый оптимизированный / эффективный подход.