2014-05-25 67 views
0

這個問題,我相信是非常微不足道的,但我無法超越它。jQuery驗證功能不工作

我的表單沒有得到驗證使用jquery驗證。

 $(document).ready(function() { 
      $("#loginForm").validate({ 
       rules: { 
        email: "required", 
        passwd: "required", 
        email:{ 
         minlength: 10 
        } 
       }, 
       messages: { 
        email: "Please enter your email", 
        passwd: "Please enter your passwd", 
        email:{ 
         minlength: "Minlength has to be 10" 
        } 
       }, 

       submitHandler: function(form) { 
        $("#pp").text("right"); 
        form.submit(); 
       } 
      }); 
     }) 

沒有控制檯錯誤。我有以下

名稱,passwd是名稱,我試圖驗證的字段的id和loginForm是窗體的ID。問題是我通過無效輸入時看不到錯誤消息。通過調試模式,雖然在調用validate之前調用了ready函數中的alert,但是我沒有看到棧裏面到達validate函數。

+0

請發表您的代碼(HTML + JS) – faby

+0

我們需要看到HTML這種形式。 – Sparky

+0

在兩個對象(規則和消息)中,您正在覆蓋「email」鍵的值。 – James

回答

1

您沒有顯示您的HTML標記,所以此答案假定您正確命名了您的input元素。

在代碼中,你指定email兩次......

rules: { 
    email: "required", 
    passwd: "required", 
    email:{ // <- duplicate 
     minlength: 10 
    } 
}, 

如果您需要爲一個字段中指定多個規則,然後指定字段一次並列出裏面的規則...

rules: { 
    email: { 
     required: true, 
     minlength: 10 
    }, 
    passwd: "required" 
}, 

您的messages選項具有相同的問題。

工作演示:http://jsfiddle.net/4937t/