[Javascript] document.getElementById non funziona come mi aspetto

gandalf1959

Utente Attivo
21 Nov 2013
208
1
18
Buongiorno a tutti,
non so se sia più corretto postare qui o nella sezione php, comunque... ecco lo scenario:
Ho una pagina che genera un numero di form uguale al valore richiesto dall'utente. Nella prima parte della pagina chiedo all'utente di quante righe ha bisogno, nella seconda parte della pagina prendo il numero e con un ciclo while (php) genero il numero di righe richieste. Ogni riga è un form.
All'interno del ciclo genero anche un id progressivo che viene assegnato al form di quella riga.
Così:
Codice:
$idform = "Data".$righe;
Cliccando sul bottone di submit richiamo una funzione javascript a cui invio $idform, che arriva regolarmente Per verificare ho la funzione:
Codice:
function formami(ilform) {
   
  var eventoincorso = document.getElementById(ilform);


  alert("Ciao "+ilform+eventoincorso);
}
Il messaggio che ottengo presenta il dato corretto al posto della variabile "ilform" mentre al posto di "eventoincorso" ottengo la scritta "[object HTMLFormElement]".
Come mai, visto che guardando il sorgente della pagina il form ha assegnato correttamente il valore della variabile ilform?
Dove sbaglio?

Grazie per i suggerimenti

p.s. lo scopo di tutto ciò è di utilizzare Ajax per aggiornare il database con i dati del form senza aggiornamenti di pagina
 
io sono poco pratico, ma mi sembra che non ci sia nessun errore,
"document.getElementById(ilform);" è l'oggetto che identifica "ilform" ( non un valore, una caratteristica o altra diavoleria )
 
Grazie per la risposta.
Lo scopo finale sarebbe quello di identificare il form, recuperare i suoi dati e poi con ajax registrare queste info nel database.
Ma se non riesco a identificare il form come faccio a passare i dati alla funzione?
Comunque ci lavoro ancora un po' prima di bruciare il computer... :-)
 
Ciao, come dice marino ilform è l'oggetto che ti serve. Se vuoi recuperare un elemento del form devi fare cosi :
Codice:
alert(eventoincorso.nomedelcampo.value);
 
Giaà... dopo essere diventato scemo per circa un milione di ore, mi sono accorto che mancava .value...
azzzz!
Perchè le cose stupide sono quelle che ti fanno perdere più tempo?
Comunque grazie.
Alla fine posterò il codice completo, per ringraziare. Magari può servire a qualcuno...
Buona serata
 

Discussioni simili