Oppure

Loading
04/12/14 23:29
Falcone
Buonasera a tutti. Ultimamente sto cercando di aggiornarmi sulle novità di html5, in particolare, su quelle relative alla validazione dei form. Sto incontrando diversi problemi nella modifica dei messaggi di errore predefiniti, per capirci, quelli che vengono mostrati a video se non si rispetta il pattern o se magari viene lasciato vuoto un campo definito required.
Sto lavorando su un form di registrazione con alcuni campi (nickname, password, conferma password, email etc etc).
Ci sono alcuni comportamenti che non mi piacciono. Per esempio quando compilo un campo in modo errato, per esempio lasciando vuoto un campo required, cliccando sul submit esce naturalmente il messaggio d'errore. A questo punto però se come messaggio di errore uso quello non predefinito, ossia quello da me modificato, andando a correggere il campo errato ad ogni nuovo carattere inserito ricompare il medesimo messaggio di errore anche se il campo è diventato valido. Sarebbe più gradevole che il messaggio d'errore scompaia nel momento in cui il contenuto value errato venga corretto. Come posso ottenere questo risultato? C'è qualcuno che ha già riscontrato questo problema e può aiutarmi? Vi posto anche il codice javascript.

function funz_messaggi_errore(evt){
	evt.target;
	var messaggio="";
	evt.target.setCustomValidity("");
	if(evt.target.validity.valueMissing) //valore non inserito
		messaggio += "Questo campo è a obbligatorio\n";
	if(evt.target.validity.patternMismatch) //espressione regolare non rispettata
		messaggio += "Alcuni caratteri non sono consentiti\n";
			
	evt.target.setCustomValidity(messaggio);	
}

function funz_validazione(evt){
	var field = evt.target;
	   field.setCustomValidity("");
	if (!field.checkValidity()){
		funz_messaggi_errore(evt);
		return;
	}
}

valueNickname.addEventListener("invalid", funz_messaggi_errore, false); 
valueNickname.addEventListener("blur", funz_validazione, false);
aaa
06/12/14 17:33
pierotofy
Le regole di validazione di HTML5 sono limitate (soprattutto in termini di UI).

Usa rickharrison.github.io/validate.js/
Il mio blog: piero.dev
08/12/14 17:39
Falcone
Ok grazie ora gli do uno sguardo e in caso mi faccio risentire
aaa