Newsgroup: it.comp.lang.javascript
Titolo: [newbe] capire funzionamento document...

problema che in qualche modo riesco ad aggirare, ma non capisco il 
funzionamento e allora chiedo se c'è un anima pia in grado di dare 
qualche delucidazione.
due pagine html (stesso header) con form da controllare/manipolare.
nella prima
<form name="generale" ....
<input name="uno" type="text" onsubmit="funz()" ...
seguono altri campi input simili.
chiama la funzione controlla il testo di quel campo input e degli altri 
tramite:
var TMP_uno = document.generale.uno.value;
var TMP_due = document.generale.due.value;
var TMP_tre = document.generale.tre.value;
manipolo le variabili e se necessario reimposto value.
funziona.
nella seconda
<fomr name="tenente" ... onsubmit="return regola()">
<input name="image[]" type="file"...
<input name="image[]" type="file"...
<input name="image[]" type="file"...
<input name="funo" type="text" ...
seguono altri campi.
usando:
var TMP_funo = document.tenente.funo.value
non riesco a rilevare il valore, mentre con:
var TMP_funo = document.getElementsByName("funo")[0].value
funziona.
a parte il fatto che per me è importante il risultato, quindi prendo 
quello che funziona e lo uso. vorrei capire a cosa è dovuto il 
funzionamento de document.nomeform.nomeimput.value in una pagina e non 
nell'altra.
grazie
ciao

 nell'altra.
quanto sopra, senza vedere il codice, è l'unica ipotesi che mi viene in
mente.
-- 
"qualcuno è andato per età
 qualcuno perchè già dottore
 e insegue una maturità, si è sposato, fa carriera
 ed è una morte un po' peggiore"
									    F.G.

 lo stesso name; idem se document.tenente.fumo==null
il form è unico, ma ho ho cinque input con lo stesso nome name="image[]" 
e uno name="funo". ho capito che non posso fare riferimento a 
document.nomeform.image[][n].value perché non accetta le [] nel nome, ma 
con getElementsByName('image[]')[n].value funziona. quello che ancora non 
mi è chiaro è il motivo per cui anche il name 'funo' lo devo leggere come 
array: document.getElementsByName('funo')[0].value .
suppongo che avendo un nome input convertito ad array (image[]) anche i 
successivi vengano trattati allo stesso modo. ma è una teoria che non 
convince nemmeno me.
le parentesi quadre nel nome servono alla pagina di destinazione in php 
che legge le variabili $_FILE['img`] come array, se le tolgo risolvo 
tutti i problemi, ma la pagina di destinazione non trova più l'array.
mi permetto d'approfittare della tua cortesia per porti una ulteriore 
domanda: cosa usi come strumento di debug?
a me non viene in mente niente di meglio che la console errori di firefox 
e piazzare alarm ovunque per vedere come procede lo script, ma mi sembra 
un sistema un po' campato in aria e forse c'è di meglio per vedere i 
valori delle variabili ecc.
grazie 
ciao

 domanda: cosa usi come strumento di debug?
niente ... vedo l'errore (console javascript di firefox) e risolvo ...
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 cosa usi come strumento di debug?
Io uso firebug, ha il supporto ai breakpoint e tante cose carine, tipo
watch di una variabile, console per inserire ed eseguire il codice "al
volo", ecc.
L'unica pecca è che ho visto che alcune volte fa casino, quindi da
abilitare solo come debug e non navigazione.
Enrico

 occhio.
Niente on line, Ma siccome mi hai messo la pulce nell'orecchio (grazie) 
ho pensato bene di frammentare tutto e testare a pezzettini. Ho creato 
una nuova pagina giusto per testare la funzione aggiungendo un po' alla 
volta ciò che a mio avviso rendeva complicata la situazione. Poi ho 
scritto ex-novo la parte incriminata sulla pagina originale e... 
funziona. mezza giornata persa per un problema inesistente: vai a capire 
che cavolo ho scritto la prima volta (eppure, giuro, ero sicuro che era 
tutto giusto!) ed ho pure fatto la mia bella figura sbandierandolo ai 
quattro venti... :)
ti ringrazio.

 abilitare solo come debug e non navigazione.
ne ho abbastanza dei miei di script, figurati se vado a spulciare quelli 
degli altri! :)
grazie 
ciao