2014-09-22 13 views
6

uso il lavoro con frame ajaxForm() per inviare i miei dati senza ricaricare la mia pagina.come eseguire un'azione prima di inviare il modulo tramite .ajaxForm()?

$('#ReplayForm').ajaxForm({ 

     success : function(data){ 
      alert("Success"); 
     } 
    }); 

ora, voglio controllare alcune condizioni prima di inviare il modulo e se la condizione è falsa poi fermarsi presentazione altrimenti continuare.

c'è qualche soluzione per fare questo lavoro o c'è un modo per acquistare che posso eseguire questa operazione. Grazie in anticipo.

risposta

8

Sì, sicuramente è possibile gestire questa situazione. dovete chiamare beforesubmit metodo per questo lascia vedere un esempio

$('#ReplayForm').ajaxForm({ 
     beforeSubmit : function(arr, $form, options){ 
      if("condition is true") 
      { 
       return true; //it will continue your submission. 
      } 
      else 
      { 
           return false; //ti will stop your submission. 
      } 

      }, 
      success : function(data){ 
       endLoading(); 
       if(data.result=="success")    
       { 
        showSuccessNotification(data.notification); 
       } 
       else 
       { 
        showErrorNotification(data.notification); 
       } 
      } 
    }); 
+3

e anche aggiungere uno js jquery.form.js

4

È possibile utilizzare l'opzione di beforeSubmit

$('#ReplayForm').ajaxForm({ 
    beforeSubmit: function (arr, $form, options) { 
     //check your conditions and return false to prevent the form submission 
     if (!valid) { 
      return false; 
     } 
    }, 
    success: function (data) { 
     alert("Success"); 
    } 
}); 
+3

ma non funziona con Safari e browser mobile a presentare, sarà direttamente presentare senza campo obbligatorio controllare –

+3

questo non sta lavorando anche nella finestra di 8.1 telefono browser IE –

2

opzione Usa beforeSend nel framework jQuery AJAX, se il test fallisce return false dovrebbe farlo.

$('#ReplayForm').ajaxForm({ 

    success : function(data){ 
     alert("Success"); 
    }, 
    beforeSend: function() { 
     if(!myFunc()) { 
      return false; 
     } 
    } 
}); 
+2

edward prova questo codice nel browser mobile con campo obbligatorio? controlla che non funzioni, senza controllo, non rispondere alla domanda, a molti sviluppatori e programmatori stanno controllando il tuo codice e dipendono da te. –

+0

Hai una soluzione mobile Janak? – Edward

+0

Sig. Edward sto affrontando questo problema mobile dall'ultimo mese e non trovo la soluzione adeguata per inviare ajaxForm senza caricare, funziona bene ma ho problemi con il browser mobile o safari, (non voglio controllare ogni volta javascript e validazione jquery per il campo richiesto) –

Problemi correlati