2014-02-08 197 views
0

我在驗證插件識別出需要我所有的輸入標籤和文本區域時遇到問題。它正在驗證電子郵件字段,但沒有其他人。jQuery驗證插件適用於某些規則,但忽略其他規則

$(document).ready(function() { 

$('#contactForm').validate({ 
    rules: { 
     name: { 
      required: true, 
      minlength: 1 
     }, 
     email: { 
      required: true, 
      email: true 
     }, 
     subject: { 
      required: true, 
      minlength: 1 
     }, 
     message: { 
      required: true, 
      minlength: 1 
     } 
    } 
}); 
}); 

這裏是頁的我試圖驗證

<form id="contactForm" action="./gdform.php" method="post"> 

     <div id="formSection"> 
      <input type="hidden" name="redirect" value="./thankyou.html" /> 
      <div id="topSection"> 
       <label><input type="text" id="Name" name="name" value="Name" required /></label> 
       <label><input type="text" id="Email" name="email" value="Email" required /></label> 
      </div> 
      <div id="messageSection"> 
       <label><input id="Subject" type="text" name="subject" value="Subject" /></label> 
       <label><textarea name="message" rows="6" required>Message</textarea></label> 

       <button type="submit">Send</button> 
      </div> 
     </div> 

    </form> 

的HTML這裏是一個小提琴,所以你可以看到我的問題http://jsfiddle.net/mM62X/。 任何有關這個問題的幫助將不勝感激!

回答

0

問題是,您正在添加默認值的所有輸入元素,而不是使用佔位符。由於您在輸入元素中有值,因此所需的驗證將通過,因此不存在驗證錯誤。

<form id="contactForm" action="./gdform.php" method="post"> 
    <div id="formSection"> 
     <input type="hidden" name="redirect" value="./thankyou.html" /> 
     <div id="topSection"> 
      <label> 
       <input type="text" id="Name" name="name" placeholder="Name" required /> 
      </label> 
      <label> 
       <input type="text" id="Email" name="email" placeholder="Email" required /> 
      </label> 
     </div> 
     <div id="messageSection"> 
      <label> 
       <input id="Subject" type="text" name="subject" placeholder="Subject" /> 
      </label> 
      <label> 
       <textarea name="message" rows="6" required placeholder="Message"></textarea> 
      </label> 
      <button type="submit">Send</button> 
     </div> 
    </div> 
</form> 

演示:Fiddle

注:不支持< IE 10

+0

哇,我簡直不敢相信我沒有意識到,哈哈。難怪這個插件在我沒有在我的輸入標籤中輸入默認值的其他項目上爲我工作! – ddelnano