Sélection de lignes dans tablesorter
-
20-09-2019 - |
Question
tablesorter un plugin jQuery (je suis sûr que d'autres savoir à ce sujet) dans mon projet. Je dois ajouter une fonction où lorsque les utilisateurs cliquent sur une ligne, il est sélectionné. J'ai essayé le code suivant mais sa ne marche pas.
$('#myTable tr').click(function(event) {
$(this).addClass('selected');
});
Quelqu'un pourrait me dire la meilleure façon de le faire? Y at-il déjà plug-in pour cela?
Merci à l'avance,
Abdel Olakara
La solution
Je pense que tablesorter reconstitue toute la table afin que pourrait être la raison pour laquelle il n'y a pas de changement car il « détruit » l'événement click attaché au tr. Vous devriez essayer l'aide d'un événement en direct et voir si cela fonctionne: Documentation pour les événements en direct à jQuery.com
Autres conseils
Pour activer sélectionner et désélectionner via le toggleClass basculer jQuery:
$(document).ready( function() {
/* jQuery v1.11.1 */
$( "table.tablesorter tbody tr" ).click(function() {
$( this ).toggleClass( "selected" );
});
});
/* CSS for hover row & select/lock the row with color */
table.tablesorter tbody tr:hover td {
background-color: #f4f5f6;
}
table.tablesorter tbody tr.selected td {
background-color: #f4f5f6;
}
Cela semble correct pour moi. Avez-vous une classe CSS définie pour tr.selected?
Peut-être quand vous cliquez, vous touchez l'élément td et non le tr. Peut-être que vous devez utiliser le parent:
http://docs.jquery.com/Traversing/parent
quelque chose comme ça (non testé):
$('#myTable td').click(function(event) {
$(this).parent("tr").addClass('selected');
});
Qu'est-ce que vous avez semble correct. Exécutons-vous après le document est prêt?
$(function() {
$('#myTable tr').click(function() {
$(this).addClass('selected');
});
});
Vous pouvez utiliser live
événements.
$('#myTable tr').live('click', function() {
$(this).addClass('selected');
});
Votre événement click semble fonctionner très bien sur ma table, je me demande comment vous désélectionner en cliquant à nouveau? attacher une variable à ayiez est sélectionné semble comme une solution facile, mais comment pourrais-je faire?
Pardon ma réponse à votre question par une autre question et ma nouveauté à JS.