dist/validetta.js
function( ajaxOptions, cache, el, fieldName, e ) {

      var self = this;

      $( this.tmp.parent ).addClass('validetta-pending');

      // cache xhr
      this.xhr[ fieldName ] = $.ajax( ajaxOptions )
        .done( function( result ) {
          if( typeof result !== 'object' ) result = JSON.parse( result );
          cache.state = 'resolved';
          cache.result = result;
          if ( cache.event === 'submit' ) {
            self.handler = false;
            $( self.form ).trigger('submit');
          }
          else if( result.valid === false ) {
            self.addErrorClass( self.tmp.parent );
            self.window.open.call( self, el, result.message );
          } else {
            self.addValidClass( self.tmp.parent );
          }
        } )
        .fail( function( jqXHR, textStatus ) {
          if ( textStatus !== 'abort' ) { // Dont throw error if request is aborted
            var _msg = 'Ajax request failed for field ('+ fieldName +') : '+ jqXHR.status +' '+ jqXHR.statusText;
            cache.state = 'rejected';
            cache.result = { valid : false, message : _msg };
            throw new Error( _msg );
          }
        } )
        .always( function( result ) { $( self.tmp.parent ).removeClass('validetta-pending'); } );

      this.handler = 'pending';
    }
function( ajaxOptions, cache, el, fieldName, e ) {

      var self = this;

      $( this.tmp.parent ).addClass('validetta-pending');

      // cache xhr
      this.xhr[ fieldName ] = $.ajax( ajaxOptions )
        .done( function( result ) {
          if( typeof result !== 'object' ) result = JSON.parse( result );
          cache.state = 'resolved';
          cache.result = result;
          if ( cache.event === 'submit' ) {
            self.handler = false;
            $( self.form ).trigger('submit');
          }
          else if( result.valid === false ) {
            self.addErrorClass( self.tmp.parent );
            self.window.open.call( self, el, result.message );
          } else {
            self.addValidClass( self.tmp.parent );
          }
        } )
        .fail( function( jqXHR, textStatus ) {
          if ( textStatus !== 'abort' ) { // Dont throw error if request is aborted
            var _msg = 'Ajax request failed for field ('+ fieldName +') : '+ jqXHR.status +' '+ jqXHR.statusText;
            cache.state = 'rejected';
            cache.result = { valid : false, message : _msg };
            throw new Error( _msg );
          }
        } )
        .always( function( result ) { $( self.tmp.parent ).removeClass('validetta-pending'); } );

      this.handler = 'pending';
    }
function ( ajaxOptions , cache , el , fieldName , e ) { var self = this ; $ ( this . tmp . parent ) . addClass ( 'validetta-pending' ) ; // cache xhr
 this . xhr [ fieldName ] = $ . ajax ( ajaxOptions ) . done ( function ( result ) { if ( typeof result !== 'object' ) result = JSON . parse ( result ) ; cache . state = 'resolved' ; cache . result = result ; if ( cache . event === 'submit' ) { self . handler = false ; $ ( self . form ) . trigger ( 'submit' ) ; } else if ( result . valid === false ) { self . addErrorClass ( self . tmp . parent ) ; self . window . open . call ( self , el , result . message ) ; } else { self . addValidClass ( self . tmp . parent ) ; } } ) . fail ( function ( jqXHR , textStatus ) { if ( textStatus !== 'abort' ) { // Dont throw error if request is aborted
 var _msg = 'Ajax request failed for field (' + fieldName + ') : ' + jqXHR . status + ' ' + jqXHR . statusText ; cache . state = 'rejected' ; cache . result = { valid : false , message : _msg } ; throw new Error ( _msg ) ; } } ) . always ( function ( result ) { $ ( self . tmp . parent ) . removeClass ( 'validetta-pending' ) ; } ) ; this . handler = 'pending' ; }
Calls ajax request for remote validations

@param  {object} ajaxOptions Ajax options
@param  {object} cache Cache object
@param  {object} el processing element
@param  {string} fieldName Field name for make specific caching
@param  {object} e Event object
Calls ajax request for remote validations