2014-09-22 51 views
6

我使用ajaxForm()框架工作來發送我的數據而無需重新加載我的頁面。如何通過.ajaxForm()提交表單之前執行一些操作?

$('#ReplayForm').ajaxForm({ 

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

現在,我想在提交表單前檢查一些條件,如果條件爲false,則停止提交,否則繼續。

是否有任何解決方案做這項工作或有任何方式購買,我可以執行此操作。 在此先感謝。

回答

8

是,definatly可以處理這種情況。你必須調用beforesubmit方法,這讓看一個例子

$('#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

工作,並添加一個JS jquery.form.js 2014-09-22 09:05:13

4

可以使用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

但它不會與Safari和移動瀏覽器中工作提交,這將直接提交無需進行現場檢查 – 2014-09-22 09:00:32

+3

這也不能在窗口8.1手機IE瀏覽器 – 2014-09-22 09:01:35

2

使用beforeSend在JQuery的AJAX框架選項,如果測試失敗return false應該這樣做。

$('#ReplayForm').ajaxForm({ 

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

愛德華你在移動瀏覽器中試用此代碼時必填字段?檢查它的不工作,沒有檢查PLZ不回答這個問題,許多開發人員和程序員正在檢查你的代碼並依賴於你。 – 2014-09-22 09:05:08

+0

你有移動解決方案Janak嗎? – Edward 2014-09-22 09:22:03

+0

先生edward我面臨這個移動問題從最近1個月,並沒有得到適當的解決方案ajaxForm提交沒有加載,其工作正常,但與移動或Safari瀏覽器的問題只,(我不想檢查每次javascript和jQuery驗證對於必填字段) – 2014-09-22 09:24:36

相關問題