2017-02-01 2 views
5

HI J'essaie de trier les élèves après le filtre. Après avoir filtré les étudiants, je suis en train d'ajouter et classer les classes du bouton et du texte comme montré dans l'image ci-dessous. enter image description here Mon code dynamique retourne HTML comme ceci:Comment trier les données de table dynamique après l'ajout

<tbody> 

<tr> 
<td><span><img></span><p>Rasmus1 Lerdorf</p><p><b>Hallticket</b> : S28J1</p></td> 
<td style="line-height:45px">4</td> 
<td style="line-height:45px">9</td> 
<td style="line-height:45px">8</td> 
<td style="line-height:45px">4.5</td> 
<td><span id="stu28" class="btn btn-danger reject-student selection-class">Not Selected</span></td> 
<td style="line-height:45px"><input class="overrideStudent" type="text" name="picomment[28]"></td> 
</tr> 

<tr> 
<td><span><img></span><p>Bill Gates</p><p><b>Hallticket</b> : S29J1</p></td> 
<td style="line-height:45px">9</td> 
<td style="line-height:45px">10</td> 
<td style="line-height:45px">8</td> 
<td style="line-height:45px">6.1</td> 
<td><span id="stu28" class="btn selection-class btn-success select-student">Selected</span></td> 
<td style="line-height:45px"><input class="overrideStudent" type="text" name="picomment[29]"></td> 
</tr> 

</tbody> 

Je veux montrer aux étudiants sélectionnés d'abord comment puis-je faire ..?

Ceci est mon code javascript |:

success: function (response) { 
    $(".selection-class").addClass('btn-danger reject-student'); 
    $(".selection-class").removeClass('btn-success select-student'); 
    $(".selection-class").text('Not Selected'); 
    $.each(response['students'], function(k, student) { 
     $("#stu"+student.student_id).removeClass('btn-danger reject-student'); 
     $("#stu"+student.student_id).addClass('btn-success select-student'); 
     $("#stu"+student.student_id).text('Student Selected'); 
    }); 
    $("#success_message").show(); 
    $("#success_message").html(response['message']); 
+2

il est beaucoup plus facile pour les gens à répondre aux questions si vous fournissez un violon ou un plunkr avec un exemple pratique du problème que vous décrivez. Par exemple, le code ci-dessus est clairement hors contexte. Fournir un exemple de travail permettra aux gens de vous aider plus facilement – blubberbo

Répondre

2

je l'ai fait une touche de fonction de clic, mais vous pouvez changer à votre fonction de succès

$('#filter').click(function() { 
    $('tr').hide(); 
    $('table > tbody > tr > td').find('.filterstudent').each(function() { 
    var result1 = $(this).text(); 
    if (result1 == 'Selected') { 
     $(this).closest("tr").show(); 
    } 
    }); 
    var row = $('tr:hidden').show(); 
    row.insertAfter(row.next()); 
}); 

https://jsfiddle.net/ppuaLedw/