2011-08-23 2 views
2

Le titre et l'exemple suivant sont explicites de ce que je n'obtiens pas :-) L'idée est de remplacer quelque chose + compteur afin de le faire fonctionner.Créer dynamiquement des variables avec une boucle For Javascript

 for (var counter = 1; counter <= 6; counter++) { 
     var something + counter = $('element' + counter); 
     (something + counter).removeAttribute('class'); 
     }  
+1

Pourquoi ne pas utiliser un tableau ou d'appliquer ces modifications directement? – Sleeperson

+1

Pourquoi avez-vous besoin de créer une variable dans la boucle? Ne pouvez-vous pas simplement faire $ ('élément' + compteur) .removeAttribute ('class'); '? –

Répondre

3

Vous pouvez créer un tableau, mais beaucoup plus simplement:

for (var counter = 1; counter <= 6; counter++) { 
    $('element' + counter).removeAttribute('class'); 
    } 
2

Utilisez un tableau.

var something = []; 
for (var counter = 1; counter <= 6; counter++) { 
    something[counter] = $('element' + counter); 
    something[counter].removeAttribute('class'); 
} 
2

Pourquoi ne pas vous débarrasser complètement du var?

for (var counter = 1; counter <= 6; counter++) { 
    $('element' + counter).removeAttribute('class'); 
} 
3

Il suffit de faire:

for (var counter = 1; counter <= 6; counter++) { 
    $('element' + counter).removeAttribute('class'); 
} 

À moins que vous vouliez stocker en dehors de la boucle, dans ce cas, utilisez un tableau.

0
for (var counter = 1; counter <= 6; counter++) { 
    window[something + counter] = $('element' + counter); 
    window[something + counter].removeAttribute('class'); 
    } 

après qu'il y aura un ensemble de champs dans l'objet de la fenêtre, du nom something1, something2 etc (si something == "something", bien sûr)

Questions connexes