Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

[JS]: Controllo Moduli con Javascript...perplessità

Il forum per tutti i developer. Leggere attentamente il regolamento di sezione prima di postare.

[JS]: Controllo Moduli con Javascript...perplessità

Messaggioda Nero87 » gio set 20, 2007 7:12 pm

Salve a tutti,
sto creando per un sito internet un form di registrazione controllato da una funzione js...il problema è che vorrei evitare che dopo il submit (in caso il modulo non sia tutto corretto) si cancellino tutti i dati precedentemente inseriti..perché di solito se i dati nn sono corretti la pagina viene refleshata..
qualcuno ha qualche consiglio?
grazie in anticipo.
Avatar utente
Nero87
Aficionado
Aficionado
 
Messaggi: 80
Iscritto il: mer nov 22, 2006 11:29 pm

Messaggioda Rumez » gio set 20, 2007 7:35 pm

Ci sono due modi..o ti affidi ad un linguaggio server side (php, asp...) e gestisci i valori dei moduli con degli oggetti session oppure con javascript impedisci che venga fatto il submit del form finché tutti i campi non vengono compilati..spero di aver capito giusto...ti faccio un piccolo esempio pratico

Questo è il form:
Codice: Seleziona tutto
<form action="processaRegistrazione.php" method="post" name="formRegistra" id="formRegistra">
<p>Username</p>
<p><input type="text" name="usr" id="usr" value="" /></p>
<p>Password</p>
<p><input type="password" name="pwd" id="pwd" value="" /></p>
<p><input type="button" value="Registra" onclick="javascript:checkForm()" /></p>
</form>


Ora tramite javascript dobbiamo gestire al premere del pulsante "Registra" la funzione checkForm() in modo che controlli se tutti i campi sono stati compilati:
* se sono stati compilati faccio il submit
* se non sono stati compilati stampo un messagio di errore ma non faccio il submit così il form non si svuota
Codice: Seleziona tutto
function checkForm() {
var usr = document.getElementById("usr").value
var pwd = docuement.getElementById("pwd").value

if ( usr=="" || pwd=="" ) {
alert("Completare tutti i campi!")
}else {
document.getElementById("formRegistra").submit()
}
}


questo codice va inserito nella stessa pagina del form tra i tag <head></head> o altrimenti in un file js che verrà incluso nella pagina del form
Avatar utente
Rumez
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 1783
Iscritto il: mar mag 13, 2003 2:08 pm

Messaggioda Nero87 » gio set 20, 2007 8:39 pm

Avevo pensato lo stesso...il problema era alla radice però...:D
la funzione js era perfetta,il controllo finale aveva la tua stessa logica...ma se lasciavo il bottone finale di tipo "submit" anche col migliore degli script si sarebbe sempre ricaricata la pagina :D
grazie comunque...senza quell'input nn ci sarei mai arrivato...
Avatar utente
Nero87
Aficionado
Aficionado
 
Messaggi: 80
Iscritto il: mer nov 22, 2006 11:29 pm


Messaggioda Rumez » gio set 20, 2007 10:33 pm

esatto..col submit lui in ogni caso processa la pagina..in questi casi devi usare un input di tipo button e gestire il submit via javascript

[^]
Avatar utente
Rumez
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 1783
Iscritto il: mar mag 13, 2003 2:08 pm

Messaggioda Nero87 » lun set 24, 2007 1:38 am

già che ci sono approfitto del medesimo post senza aprirne un'altro per chiedere un'altro consiglio...
sempre per quel sito avrei bisogno di inserire in una textarea un file di testo in formato .doc che rappresenta l'indice di un libro...però se copio/incollo la formattazione va a farsi benedire...non so proprio cosa fare per lasciarla intatta come la si vede in word...qualche dritta?
Avatar utente
Nero87
Aficionado
Aficionado
 
Messaggi: 80
Iscritto il: mer nov 22, 2006 11:29 pm

Messaggioda Rumez » lun set 24, 2007 7:51 am

da quello che so io la text area ha una formattazione diversa da quella di word..praticamente ha la formattazione del blocco note oserei dire..

mi sa che ti conviene adattare il testo oppure (e secondo me è meglio) trasformare il testo in word in html e poi inserirslo dentro un div "stilizzato" con i CSS come una text area.
Con stilizzato come una text area intendo cun un bel bordino, dimensione fissa e overflow:auto un modo da renderlo un box con barra di scorrimento laterale
Avatar utente
Rumez
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 1783
Iscritto il: mar mag 13, 2003 2:08 pm

Messaggioda Nero87 » lun set 24, 2007 11:56 am

ecco tu mi dici trasformare manualmente il testo .doc in formato html..il problema è che essendo un'indice di un libro...la cosa potrebbe rivelarsi estremamente lunga come ho già sperimentato..non so proprio cosa fare perché poi tra l'altro se mi metto ad allineare il tutto con macromedia poi su mozilla e ie ti ritrovi nuovamente la formattazione a ca**o di cane...nn so che fare!
Avatar utente
Nero87
Aficionado
Aficionado
 
Messaggi: 80
Iscritto il: mer nov 22, 2006 11:29 pm

Messaggioda Rumez » lun set 24, 2007 2:53 pm

non capisco però perché devi mettere l'indice di un libro in una textarea..

il prublema è che se hai i contenuti in un formato (doc) non puoi pensare di poterli riportare in html senza un minimo di sistemazioni a mano. Parti da un bel copia/incolla..oppure salva il word in html e poi fai la pulizia del codice..lo so che è una palla ma non credo si possa fare in automatico..se scopri come si fa fammi sapere [;)]
Avatar utente
Rumez
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 1783
Iscritto il: mar mag 13, 2003 2:08 pm


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising