J'ai une table HTML semblable à ceci:Transformer le contenu de TableCell avec CSS ou jQuery
<table>
<tr>
<td>1</td>
<td>Some text...</td>
</tr>
<tr>
<td>2</td>
<td>Some text...</td>
</tr>
<tr>
<td>3</td>
<td>Some text...</td>
</tr>
<tr>
<td>1</td>
<td>Some text...</td>
</tr>
<tr>
<td>1</td>
<td>Some text...</td>
</tr>
<tr>
<td>2</td>
<td>Some text...</td>
</tr>
<tr>
<td>3</td>
<td>Some text...</td>
</tr>
</table>
Les cellules dans la première colonne contiennent une valeur numérique de 1, 2 ou 3.
Je suis à la recherche d'une façon intéressante de transformer cette valeur en quelque chose de plus «graphique» en utilisant une approche côté client telle que CSS (de préférence) ou jQuery. Par exemple, au lieu de "1", le contenu de la cellule doit être rendu sous la forme d'une icône ou d'un point avec une couleur rouge. Le simple réglage de la couleur d'arrière-plan serait également acceptable.
MISE À JOUR:
Merci pour toutes les suggestions. Il semble que c'était juste la méthode Each de jQuery qui me manquait. :)
Voici mon code final. Je l'ai enveloppé dans une fonction séparée qui est appelée sur le document prêt et après les mises à jour de la table.
function fnTransformIcons()
{
var color;
$("td.Icon").each(function() {
var value = $(this).html();
switch (parseInt(value))
{
case 0 : color = 'white'; break;
case 1 : color = 'red'; break;
case 2 : color = 'green'; break;
case 3 : color = 'yellow'; break;
}
$(this).css("backgroundColor", color);
});
}
Que diriez-vous de remplacer '$ (this) .children(). Tout d'abord() le texte. () 'avec' $ ("td: first", this) .text() '? – Eikern