Il metodo reset() non pulisce il form ma lo riporta allo stato iniziale con il quale e' stato ricevuto.
Per una "pulizia" del form hai bisogno di invocare una funzione, per esempio:
Da richiamare passando come parametro il form stesso, per esempio da un button interno al form:codice:function azzera(myForm){ if (document.all||document.getElementById){ myForm.reset(); // serve per type="file" for (a=0;a<=myForm.elements.length-1;a++) { myEl=myForm.elements[a]; myType=myEl.type.toLowerCase(); if(myType=="text"||myType=="hidden"||myType=="textarea"||myType=="password") { myEl.value=""; } if(myType=="select-one"||myType=="select-multiple") { myEl.selectedIndex=-1; } if(myType=="checkbox"||myType=="radio") { myEl.checked=false; } } } }
<input type=button value="Pulisci" onclick="azzera(this.form)">
ciao