2010-02-10 84 views
3

我意識到這已被問了幾次,但想知道是否可以幫助我解決問題。jQuery + jQuery表單提交插件+ jQuery驗證插件

背景:我試着創建一個使用Ajax(jQuery Form Submit)提交的表單。我已經工作得很好,然後我想要在表單上進行驗證。我可以使用jQuery Form Validation Plugin工作。但我似乎無法讓他們一起工作。

基本上它只是提交表單天氣或不是「有效」。

我希望這是簡單的。你能看到這個問題嗎?

$('#addCompany').submit(function() { 
    $('#addCompany').ajaxSubmit({ 
     target:  '.response', 
      beforeSubmit: validateForm, 
     success:  function() { 
      $('.response').fadeIn('slow'); 
     } 
    }); 

    }); //END SUBMIT FUNCTION 
    }); //END DOCUMENT 

    function validateForm() { 
     $("#addCompany").validate({ 
      rules: { 
       company: "required", 
       contactEmail: "required" 
       }, 
      messages: { 
       company: "Please enter the clients company", 
           contactEmail: "Please enter a valid email address", 
        } 
     }); 
    } 

回答

2

你在錯誤的順序做。請參閱example here。在你的情況下,它應該是:

$("#addCompany").validate({ 
    rules: { 
    company: "required", 
    contactEmail: "required" 
    }, 
    messages: { 
    company: "Please enter the clients company", 
    contactEmail: "Please enter a valid email address", 
    }, 
    submitHandler: function(form) { 
    $(form).ajaxSubmit({ 
     target: '.response', 
     success: function() { 
     $('.response').fadeIn('slow'); 
     } 
    }); 
    } 
}); 
0

你需要從validateForm返回一些東西。現在它總是返回true,因爲沒有返回值。

你想要的東西像

return $("#addCompany").....