Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253

    Ciclo For per InnerHTML

    ciao a tutti,

    ho il seguente problema: al click su 1 tasto verifico se 1 casella di testo è valorizzata, se il valore è 1 numero la funzione javascript dovrebbe farmi 1 ciclo for con tanti innerHTML dentro 1 oggetto <table> a seconda di quanto vale la casella di testo, ma ciò non accade minimamente...Come mai?

    Posto il codice della funzione:

    for (var i=0;i<parseInt(NatStopNumber);i++)
    {
    document.getElementByID('AddNationalStopTable').in nerHTML = "<tr><td class=Caption>Ciao</td></tr>"
    }

    pensavo che se il valore NatStopNumber = 4 mi avrebbe semplicemente inserito quattro righe dentro quella tabella, invece niente!

    NB: se nel ciclo for imposto alert(i) cicla correttamente per (NatStopNumber-1) volte...

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Perché l'errore non sta nella for ma nel ciclare n volte il tag avente come id AddNationalStopTable che invece deve essere unico, occhio anche alla sintassi document.getElementByID la [d] deve essere piccola.
    Per tornare al tuo problema leggi qui utilizzando solo la parte che crea la tabella.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    scusa ma io non vado ad inserire n volte AddNationalStopTable ma gli dico soltanto di inserire n righe lì dentro, cosa c'è di sbagliato?

    Comunque provvedo a metterci anche un name e a provare con document.getElementByTagName

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    il problema e' che tu ogni volta SOVRASCRIVI il valore innerHTML della table, quindi ti funzionera' solo l'ultimo. prova cosi:

    // fuori dal for
    document.getElementByID('AddNationalStopTable').in nerHTML = ''

    // nel for
    document.getElementByID('AddNationalStopTable').in nerHTML += "<tr><td class=Caption>Ciao</td></tr>"

    una considerazione:
    non e' convieniente fare document.getElement... tutte le volte nel ciclo for,
    e' meglio se lo fai una volta sola fuori dal for e ti salvi il risultato in una variabile:

    var myTable = document.getElementByID('AddNationalStopTable');

    e nel for:
    myTable.innerHTML += "<tr><td class=Caption>Ciao</td></tr>"
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    noto adesso anche io che ID va scritto con la "d" piccola!
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    grazie a tutti, vi farò sapere stasera il risultato.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    ragà sbaglierò io qualcosa, ma a me continua ad andare in errore e il messaggio è
    errore di run-time sconosciuto...

    come devo fare??
    eppure non mi sembrava molto complicata come cosa da voler implementare, anzi...

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    Dai datemi una mano...sto impazzendo su sta cosa!!!

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.