Come posso usare i Deferred Object di jQuery nella validazione dei form?

Come posso usare i Deferred Object di jQuery nella validazione dei form?

I Deferred Object di jQuery possono anche essere usati per sincronizzare i task della validazione dei form.

Un esempio potrebbe essere il seguente:


(function( $ ) {
	
	// Restituisce un valore booleano
	
	function validate( value ) {
		var pattern = "@";
		if( value.indexOf( pattern ) != -1 ) {
			return true;
		} else {
			return false;
		}
	}
	
	
	
  $( document ).ready(function() {
	
	$( "#email" ).on( "keyup", function() {
		var val = $( this ).val();
		
		
		$.when( validate( val ) ).done( function( def ) {
			// def contiene il valore booleano della validazione
			if( def ) {
				$( "#submit" ).removeAttr( "disabled" );
			}
		});
	});
	
  });

})( jQuery );

Torna su