Bonjour,

Sur un tableau j'applique un filtre. la valeur du filtre est déterminée par un champ input et se lance par onkeyup. A chaque fois que l'utilisateur rajoute une lettre dans l'input le tableau est refiltré.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
     function filtre(valeur,colonne)
{  
        for (i=0;i<nb_lots;i++)
    {
    if (!$("#matable tbody>tr:eq("+i+")>td:eq("+colonne+")").text().toLowerCase().match(valeur.toLowerCase())) 
          {$("#matable tbody>tr:eq("+i+")").hide();}
     else {$("#matable tbody>tr:eq("+i+")").show();}
        }
cette fonction est activée par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<input type="text"class="inputbleu" size="6" name="xxx" onkeyup=javascript:filtre(this.value,22)>

mon pb est que si l'utilisateur rentre plusieurs lettres à la suite la fonction filtre est en train de tourner et comme le tableau est un peu long il faut attendre que le filtre soit terminé pour que la lettre suivante soit acceptée et que le filtre se remette en route.

je voudrais donc en cas de 2 frappes de touche rapprochées interompre ma fonction et la relancer immédiatement.

merci de vos idées.