2010-09-15 122 views
0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Validation POC</title> 
    <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script> 
    <script src="Scripts/jquery.validate.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
    $("#frm").validate({ 
     rules: { 
      cname: { 
       required: true 
      }, 
      cemail: { 
       required: true, 
       email: true 
      } 
     }, 
     messages: { 
      cname: "Please 
    enter 
    your 
    name", 
      cemail: { 
       "Email 
    is 
    not 
    validated" 
      } 
     } 
    }); 
}); 
</script> 
</head> 
<body> 
<form id="frm" action="" method="get"> 
<fieldset> 
    <legend>Validation POC</legend> 
    <p> 
    <label for="cname">Name</label> 
    <em>*</em><input id="cname" name="name" size="25" /> 
    </p> 
    <p> 
    <label for="cemail">E-Mail</label> 
    <em>*</em><input id="cemail" name="email"size="25" /> 
    </p> 
    <p> 
    <input class="submit" type="submit" value="Submit"/> 
    </p> 
</fieldset> 
</form> 
</body> 
</html> 

我正在嘗試使用jquery validation進行表單驗證。我試圖給我自己的錯誤消息。但是這段代碼沒有運行。使用jquery進行表單驗證

當我試圖

<input type="text" id="cemail" class="required"></input> 

代碼工作正常,但與此,我不能給自定義錯誤消息。請讓我知道如果我在上面的代碼中做錯了什麼。
編輯:我還有一個問題,如果驗證失敗的任何控制,我想改變該控件的背景顏色。我也想刪除默認的錯誤信息。

回答

1

有2個問題,主要是你需要使用name屬性(id屬性),爲您的規則,以便nameemail,不cnamecemail。此外,{}圍繞email錯誤消息需要刪除。總體而言,你想看起來像這樣:

$("#frm").validate({ 
    rules: { 
     name: { required: true }, 
     email: { required: true, email: true } 
    }, 
    messages: { 
     name: "Please enter your name", 
     email: "Email is not validated" 
    } 
});​ 

You can give it a try here

1

cemail和cname應該添加到輸入元素作爲類,而不是ID。

例如:

<input class="cemail" name="email" size="25" /> 
+0

@Maris無法正常工作。 – 2010-09-15 07:48:28

+0

但是,如果我使用名稱=「cemail」......它的工作。 – 2010-09-15 07:54:38

+0

好的,對,我很接近:) – 2010-09-15 08:01:48

1

格式應該是這樣的......

$(document).ready(function() { 
    $("#frm").validate({ 

     rules: { 
      cname: { 
       required: true 
      }, 
      cemail: { 
       required: true, 
       email: true 
      } 
     }, 
     messages: { 
      cname: { 
       required: "Please enter your name" 
      }, 
      cemail: { 
       email: "Email is not validated" 
      } 
     } 
    }); 
}); 

cnamecemailinputname屬性的值。

demo