Trier une liste en mode case-insensitive

Mammouth du PHP | 1339 Messages

10 mars 2012, 01:07

Bonjour,

J'ai une liste et je voudrais la trier en javacript.

Je pensais passé par la balise Title mais les selectors CSS ne sont pas insensitive du coup ca ne marche pas.
J'ai vu que les class le sont mais n'accepte pas les espaces.
Donc je ne sais pas trop comment faire.
<ul>
 <li title="Studio A">Studio A
  <ul>
   <li title="Studio A > Li 1">Li1</li>
   <li title="Studio A > Li 2">Li2</li>
  </ul>
 </li>
 <li title="Studio B">Studio B
  <ul>
   <li title="Studio B > Li 1">Li1</li>
   <li title="Studio A > Li 2">Li2</li>
  </ul>
 </li>
</ul>
J'étais parti sur cette logique la.

Code : Tout sélectionner

function filtrer() { $('li[title*="'+$('#rechercher').val()+'"]').each(function() { alert($(this).html()); }); return false; }
Mais si je cherche "studio" ca ne trouve rien. Il faudrait chercher "Studio".

Des idées ?

Merci,

Elie
Bon sinon tu me fais un message privé et on se fait un TeamViewer

ViPHP
ViPHP | 1996 Messages

11 mars 2012, 13:55

Par les Regex ?
function filtrer() {
      var valeur = $('#rechercher').val();
      var exp = new Regex (valeur,"gi");
      $('li[title*]').each(function() {
         var chaine = $(this);
         if (exp.test(chaine))
             alert(chaine.html());
      });
      
      return false;
      
   }
vérifie $('li[title*]'), je ne sui spas chez moi et je ne peux pas vérifier la syntaxe d'où je suis.
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr