Visualizzazione dei risultati da 1 a 4 su 4

Discussione: ciclo for : SINTASSI!

  1. #1

    ciclo for : SINTASSI!


    Sto provando a snellire un codice di questo tipo utilizzando un ciclo FOR:
    codice:
    	frm1 = document.getElementById('img1');
    	frm1.removeAttribute('disabled');
    	frm2 = document.getElementById('img2');
    	frm2.removeAttribute('disabled');
    	frm3 = document.getElementById('img3');
    	frm3.removeAttribute('disabled');
    	frm4 = document.getElementById('img4');
    	frm4.removeAttribute('disabled');
    	frm5 = document.getElementById('img5');
    	frm5.removeAttribute('disabled');
    Ho provato così, ma non va ("Costante String senza terminazione")
    codice:
    	for(i=1;i<=5;i++) eval("frm"+i+"=document.getElementById('img"+i+");");
    	for(i=1;i<=5;i++) {
    	frm[i].removeAttribute('disabled');
    	}
    Sicuramente è un problema di sintassi.
    Dove sbaglio?
    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Lo faccio in una riga:

    for(var i=1;i<=5;i++) {document.getElementById('img'+i').removeAttribute ('disabled'); }

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    qui consideri frm un array
    frm[i].removeAttribute('disabled');

    qui non crei un array ma singole variabili (per di piu' globali)
    eval("frm"+i+"=document.getElementById('img"+i+"); ");

    dovresti inzizializzare questo array con
    var frm=new Array();
    oppure
    var frm=[];

    e l' eval scriverlo cosi'
    eval("frm["+i+"]=document.getElementById('img"+i+");");


    poi... l' eval, come spesso accade, e' in questo caso del tutto inutile
    var frm=[];
    for(i=1;i<=5;i++) frm[i]=document.getElementById('img'+i);


    ma la domanda e': ti serve altrove un array di elementi cosi' costituito?
    se la risposta fosse no
    for(i=1;i<=5;i++) document.getElementById('img'+i).disabled=false;
    oppure, se proprio vuoi rimuoverlo dal markup
    for(i=1;i<=5;i++) document.getElementById('img'+i).removeAttribute(' disabled');

    ciao

  4. #4
    Diciamo che ho capito il 2% di quello che mi avete scritto...


    Però funziona e per ora me lo faccio bastare.
    Ora studierò, lo prometto!!!! Grazie mille ad entrambi, ciauz!
    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.