bonjour
soit une table de classe .table ... avec les lignes de la table avec des <tr class="wrap">
je souhaite via un champ :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <input type="search" class="findNotes" size="20" placeholder="filtrer sur...">
... filtrer les lignes du tableau sur les seules lignes qui commencent par les caractères saisies dans ce champ :
je parviens à faire un truc qui ne retient que les lignes dont les <td> contiennent les caractères saisis :
mon code:
je ne parviens par à n'afficher que les lignes qui "commencent par ..."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 /// Filtrage des PRATICIENS DE LA LISTE DES PRATICIENS VUS PAR NOM $(document).on('keyup','.findNotes',function(){ var div2=$('.table td'); var motcle=$(this).val(); if(motcle!=''){ div2.parents('tr.wrap').show(); // on affiche ou on reaffiche tout div2.not(':contains('+motcle+')').parents('tr.wrap').toggle(); } else{ div2.parents('tr.wrap').show(); } });
une aide serait sympa
mouchas gracias
PS :
Mon bout de code est en bas de ma page .php dans une balise <script>.
Cela permet sans refaire une requête mysql à chaque caractère saisi de filtrer l'affichage du tableau ... cela me parait propre comme principe.
A chaque appui sur une touche clavier ... keyup ... on a le jQuery qui est interrogé... et les lignes ( en fait les <td> ) qui
ne sont pas porteuses du (des) caractère(s) saisis sont tout simplement rendu invisibles via l'utilisation de .parents() qui va donc cibler la balise <tr> ( parente de la <td> )
mais ... je me répète ... je voudrai simplement que seules les NOMS qui commencent par les caractères saisis restent visibles .
Partager