Newsgroup: it.comp.lang.javascript
Titolo: Form in visibility: hidden;

Sto preparando un test dove le domande vengono rivolte una alla volta
utilizzando la proprietą: visibility:hidden;
ponendo man mano in visibility:visible; la domanda corrente che si trovano
nello stesso form.
Prima di introdurre questa modifica mi funzionava tutto, l'invio ad una
procedura di controllo e valutazione, anche attraverso un'invio forzato con
timeout:setTimeout('document.forms["Form1"].submit()',countdown_time).
Adesso non funziona il bottone finale di invio, e attraverso l'invio forzato
passa alla procedura di controllo, ma non "passa" nessuna variabile, nemmeno
l'ultima.
Che cavolo č successo?

 Che cavolo è successo?
Boh...senza vedere il codice è dura.
Ti consiglio di mettere degli alert nelle tue funzioni
e vedere dove si blocca.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Che cavolo è successo?
Mi dispiace non lo sò
Ciao
Ah, già che lo fai tornare in mente vado giusto a farmi una bella zippata

Si il backup l'ho anche fatto, infatti quando visualizzo l'intero Form,
tutto funziona perfettamente. Quando visualizzo le domande una alla volta,
alla fine non mi invia le risposte date.
Non ho chiaro il consiglio di utilizzare degli alert.
Il codice vediamo di sintetizzarlo:
<form method="POST" action="controlla.asp" onsubmit="Form1_Validator(this)"
id="submitform" name="FrontPage_Form1">
<div id="Dom2" style="position:absolute; visibility: hidden;">
  <table border="0" width="100%" cellspacing="0">
        (tabella contenente la domanda)
  </table>
<A href="javascript:succ('Dom3', 'Dom2');">Next</A>
</div>
<div id="DomN" style="position:absolute; visibility: hidden;">
  <table border="0" width="100%" cellspacing="0">
        (tabella contenente la domanda con moduli di diversa natura,
funzionati nella visione generale del test)
  </table>
<A href="javascript:succ('DomS', 'DomN');">Next</A>
</div>
(la funzione succ mi visualizza la successiva e nasconde la corrente)
(alla fine invio tutto con:)
<input type="submit" value="Invia le risposte" name="B1"></p>
</form>

 id="submitform" name="FrontPage_Form1">
Sicuramente è questo Form1_Validator() che va in errore.
O metti degli alert (come ti avevo detto prima) e vedi dov'è l'errore
oppure ci posti il codice e cerchiamo di capire dov'è l'errore.
Ciao


 Che cavolo è successo?
Molto semplice: non puoi sparpagliare i campi di un form in vari 
livelli. Ogni livello e' un "documento" a se stante, quindi quei campi 
(nei livelli) di fatto *non esistono* nel tuo form.
L'unica soluzione che puoi fare e' dichiarare in ogni livello un form a 
se stante e nel form principale tanti campi hidden (ma non con lo stesso 
nome, distinguili almeno con un carattere diverso) quanti sono i campi 
nei livelli.
Al submit del form principale ti scorri tutti i livelli, recuperi i 
valori e li piazzi nei rispettivi campi hidden, fatto questo mandi il 
form.
Basta anche attivare la funzine all'onsubmit.
Non c'e' altra strada purtroppo.
Questa limitazione fa parte della natura stessa dell'HTML.
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
Per rispondere: togli il PUNTO e metti un .

 ha scritto nel messaggio
news:MPG.18ac3d7b8...@powernews.libero.it...


 Grazie
De nada.
Se impari a quotare e a rispondere sotto ti ringrazio anch'io insieme a 
tutta USENET.
