Salve a tutti sto cercando di prendere un po' di confidenza con javascript facendo qualche esercizio stupido...
L'esempio seguente si limita a riscrivere una stringa inserita in una form solo che ho notato che se la funzione viene chiamata dall'evento onclick (cliccando sul tasto Ok) la pagina non viene caricata e quindi le modifiche al DOM fatte da javascript non scompaiono, mentre se la stessa funzione è richiamata dall'evento onsubmit (premendo Return quando il cursore è nel campo input text) le modifiche al DOM fatte da javascript sono corrette ma scompaiono immediatamente perchè la pagina viene ricaricata... Come posso evitare che questo avvenga?
Ecco il codice in questione...
Ah, dimenticavo di dire che uso Firefox2 ma spero non ci sia differenza con altri browser...codice:<html> <head> <script type="text/javascript"> function genera(form) { var s = form.s.value; var nl = document.createElement("p"); nl.appendChild(document.createTextNode("Hai scritto: " + s)); document.getElementById("r").appendChild(nl); } </script> </head> <body> <form onsubmit="genera(this)"> <input type="text" name="s" value=""> <input type="button" value="Ok" onclick="genera(this.form)"> </form> <div id="r"></div> </body> </html>
PS: come viene implementato il controllo ortografico con sottolineatura in rosso delle parole errate nella textarea dei messaggi di questo forum? Non c'entra niente, è solo una curiosità...

Rispondi quotando