Version complète: sur le forum Webmaster Hub : Tout élément commençant par...
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > AjaX et JavaScript
sarc
Salut,

Encore moi et mon javascript primaire.

Je veux cette fois appliquer une propriété à tous les éléments dont le nom (name) commence par "xxx".

J'ai essayé ça :
CODE
  for (i=1; i<=document.getElementsByName("xxx"+"*").length; i++)
   document.getElementsByName("xxx"+"*").item(i).style.display="block";

Sans grand succès. Ca marche pas...

Comment faire ? On peut utiliser une expreg dans GetElementsByName ? Ou pas ? Si oui comment ? Etc.
captain_torche
Dans le principe, il faut que tu boucles sur tous les éléments.
Ensuite, sur chacun d'entre eux, tu testes le nom avec une expression régulière. Si Tu as une correspondance, tu affiches l'élément.
sarc
Je sais pas pourquoi, mais ça ralentir à mort mon programme... Ca fait laguer Firefox.
Y'a pas une autre solution ?
captain_torche
Tu peux copier-coller ton code ?
J'avais déjà fait une fonction "getElementsByClassName", qui ne me semblait pas si gourmande que ça, alors qu'elle partait du même princpe (boucle sur tous les éléments de la page).
sarc
Victoire !
Merci Captain_Torche, encore une fois...
(Je vais finir par te devoir un verre tongue.gif)

CODE
var expr = new RegExp('aide-'+partie+'-[0-9]*');
  for (i=0; i<document.getElementsByTagName("div").length; i++)
   {
       if (document.getElementsByTagName("div").item(i).id.search(expr)>=0)  document.getElementsByTagName("div").item(i).style.display= 'block';;
   }
pluriels
tu devrais te pencher sur Prototype.
Cette Librairie Javascript regroupe toutes les fonctions dont tu peux avoir besoin.
En plus, elle est compatible avec tous les navigateurs récents.

(vous entendrez aussi parler de Framework Javascript)
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.