Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [JavaScript] getElementById

    Incuriosito da un tutorial su AJAX ho fatto qualche prova per modificare dinamicamente il contenuto di un form senza usare la parte lato server... (per questo il titolo è javascript e non ajax )

    Il problema nasce quando invece di avere degli oggetti con un nome definito nel form uso il contenuto di una variabile php per definire il nome dell'oggetto del form.

    un esempio suppongo sia utile.

    query SQL con vari risultati.
    per ogni riga di riusltato genero una riga di una tabella.
    Il nome degli oggetti in input è definito nel DB e quindi ottengo qualcosa tipo:
    <INPUT type=text name=$riga[0] value=0>

    il tutto condito con un bel onChange=update($rigf[0],$riga[4]) che fa riferimento ad uno script JS che calcola il rpodotto tra il contuto di $riga[0] e $riga[4]. I valori vengono passati corretamente allo script. il problema è quando la funzione update(a,b) cerca di leggere
    getElementById(a).value mi dice che "document.getElementbyId(a) has no properties."

    Premesso che se uso valori non dinamici il tutto funziona...
    Cosa sbaglio?

    Grazie per l'attenzione.
    Luca
    Have you tried turning it off and on again? - IT Crowd

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Se usi name suppongo siano elementi di un form... allora la sintassi potrebbe essere:

    document.NomeDelForm.elements["$riga[0]"]

    Ma dato che tu usi un'altra sintassi che fa uso dell'id, potresti anche provare ad assegnarglielo un id a quell'oggetto... adesso ha solo il name:

    <INPUT type=text name=$riga[0] id="$riga[0]" value=0>

    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
    duh...

    questo è quel che succede quando non si sta attenti..
    avevo un esempio in html che funzionava.. passandolo in php mi sono perso una parte... l'id degli oggetti del form appunto.

    ora funziona...

    Grazie mille, imparato qualcosa di nuovo

    A questo punto ne approfitto per usare la forma che mi hai indicato anziche usare l'id

    Grazie ancora, Luca
    Have you tried turning it off and on again? - IT Crowd

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 © 2024 vBulletin Solutions, Inc. All rights reserved.