2012-02-16 5 views
0

J'ai une table dont les valeurs td sont affichées sous formejquery pour appliquer le style css

<table> 
<tr> 
<td><?=$something?></td> 
<td><?=$something?></td> 
<td><?=$something?></td> 
<td><?=$something?></td> 
</tr> 
<tr> 
<td><?=$somethingelse?></td> 
<td><?=$somethingelse?></td> 
<td><?=$somethingelse?></td> 
<td><?=$somethingelse?></td> 

</tr> 

Je voudrais demander jquery pour tous td dans la deuxième rangée après une certaine condition est remplie, par exemple, la première somethingelse dans le premier td est plus petit que zéro.

+3

Si ce '

+0

Alors, quel problème avez-vous? Sélection des cellules dans la deuxième rangée? Trouver les cellules dont vous parlez dans la première rangée? Obtenir le contenu de ces cellules? Effectuer la comparaison? – Quentin

Répondre

0

Vous pouvez faire quelque chose comme:

 

if(yourCondition) { 
$('table > tbody > tr:eq(2) > td').each(function() { 
    $(this).css("color", "red"); //add color red for example 
}); 
} 
 

Voulez-vous dire quelque chose comme ça ..

+0

Qu'est-ce que la marque '>'? –

+0

@JohnSmith Ceci est le sélecteur d'ancêtre direct ... ce qui signifie que vous sélectionnez le td qui est directement dans tr dans le DOM –

+0

@john qu'en est-il des conditions que vous avez mentionnées à propos ??? est-ce rempli dans cette réponse ??? –

0

$('tr:nth-child(2) td') cela sélectionnera tds de 2e rangée

0

Cela le fera pour vous.

//get the second table row (eq is zero-indexed) 
var second_tr = $('tr').eq(1); 
//get the contents of the first element in second row 
var first_td_val = second_tr.find('td:first').text();​ 
if(first_td_val < 0){ 
    //do something with the second table row. 
    second_tr.css('background-color', '#bada55'); 
} 
​ 

Voir This jsFiddle

Questions connexes