ASP.NET MVC結合jQuery外掛進行資料驗證
jQuery Validation是一個強大的資料驗證外掛,該外掛支援“validation rule”即驗證規則,規則將對錶單內的輸入控制元件進行控制或約束,譬如“本項必填”,“本項不能少於n個字元”,或者“這不是一個有效的email地址” 等等。這些規則大多數和asp.net本身的驗證控制元件類似。遺憾的是asp.net本身的驗證控制元件不能在MVC框架下工作,因為伺服器端控制元件受頁面的 ViewState限制,而MVC框架是沒有ViewState特性的……
一條規則有兩種方式應用到輸入框中:
1,宣告,在輸入框中設定class屬性。
PLAIN TEXT
HTML:
可以看到標記中的class屬性被設為“required”和“email”,這表示該輸入框是必填的和被約束為合法email字串內容的的規則。這種多個規則用於一個區域的形式必須要由一個空格符分開。
2,為規則指定指令碼。
PLAIN TEXT
JavaScript.
$(document).ready(function(){
$("#form-sign-up").validate( {
rules: {
email: {
required: true,
email: true
},
messages: {
email: {
required: "Please provide an email",
email: "Please provide a valid email"
} });
});
指定id為“form-sign-up”的表單容器裡的id為“email”的輸入框的規則,並且還設定了當驗證使用者輸入失敗時所顯示的相應的提示資訊。這些提示資訊可以在指令碼中的“messages”部分裡進行自定義設定。提示資訊是可選項,jQuery Validation外掛提供了一套預先定義的提示資訊。如果想提高使用者體驗效果,建議設定更友好的提示資訊。
最後還有一種更有趣更重要的規則方式就是“remote”即“遠端規則”,也可以稱其為“伺服器端驗證”(上面的驗證都是在客戶瀏覽器端完成)。驗證處理在伺服器端進行,常用於使用者名稱是否存在之類驗證,很重要。AJAX形式執行遠端的驗證處理,可以使用MVC的控制器方法。
PLAIN TEXT
JavaScript.
$(document).ready(function(){
$("#form-sign-up").validate( {
rules: {
login: {
required: true,
remote: ''
}
},
messages: {
login: {
required: "Please provide an alias",
remote: jQuery.format("{0} is already in use")
}
} });
});
在伺服器控制器端唯一的要求就是Json結果返回驗證結果。在MVC框架中是很容易做到的:
PLAIN TEXT
C#:
public JsonResult IsLoginAvailable(string login)
{
JsonResult result = new JsonResult();
if (login == "boho")
result.Data = false;
else
result.Data = true;
return result;
}
在上面的處理中,如果輸入框輸入的資料為"boho",驗證失敗,並且使用者會看到一條錯誤訊息“boho is already in use”
錯誤資訊的樣式:
PLAIN TEXT
CSS:
label.error {
display: block;
color: red;
font-style. italic;
font-weight: normal;
}
input.error {
border: 2px solid red;
}
td.field input.error, td.field select.error, tr.errorRow td.field input,tr.errorRow td.field select {
border: 2px solid red;
background-color: #FFFFD5;
margin: 0px;
color: red;
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-553434/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JQuery對ASP.NET MVC資料進行操作jQueryASP.NETMVC
- MVC學習筆記之:ASP.NET MVC的客戶端驗證-jQuery.validate驗證結合Model驗證中的實現MVC筆記ASP.NET客戶端jQuery
- Jquery表單驗證外掛–ValidformjQueryORM
- 【Dflying Chen】在ASP.NET Atlas中結合Membership進行身份驗證ASP.NET
- MVC驗證08-jQuery非同步驗證MVCjQuery非同步
- 常用jquery外掛資料jQuery
- jQuery外掛之驗證控制元件jquery.validate.jsjQuery控制元件JS
- Asp.Net Mvc後臺資料驗證自測小DemoASP.NETMVC
- MVC 後設資料驗證MVC
- ASP.NET MVC 外掛化機制ASP.NETMVC
- Asp.Net MVC 身份驗證-FormsASP.NETMVCORM
- ASP.NET MVC驗證碼演示ASP.NETMVC
- Asp.net MVC中表單驗證ASP.NETMVC
- js表單驗證和各種資料驗證正規表示式外掛JS
- Jquery多選資料字典外掛jQuery
- [ASP.NET MVC 小牛之路]16 - Model 驗證ASP.NETMVC
- 驗證碼打擊外掛
- PHP 對資料進行驗證和過濾PHP
- ASP.NET MVC學習之模型驗證篇ASP.NETMVC模型
- 在實際使用智慧合約中需要預言機對資料進行驗證
- MVC驗證11-對複雜型別使用jQuery非同步驗證MVC型別jQuery非同步
- ASP.NET MVC 5改進了基於過濾器的身份驗證ASP.NETMVC過濾器
- vuelidate 結合 Laravel 後端資料註冊驗證VueLaravel後端
- octobercms 外掛學習 驗證碼
- validate表單驗證外掛
- jQuery外掛jQuery
- 資料驗證的asp.net程式 (轉)ASP.NET
- ASP.NET MVC中使用FluentValidation驗證實體ASP.NETMVC
- ASP.NET MVC許可權驗證 封裝類ASP.NETMVC封裝
- 20151221jquery學習筆記--驗證外掛jQuery筆記
- 零基礎ASP.NET Core MVC外掛式開發ASP.NETMVC
- 使用SpringBoot進行優雅的資料驗證Spring Boot
- 使用正規表示式進行xml資料驗證(轉)XML
- 在ASP.NET MVC中使用Knockout實踐06,自定義驗證、非同步驗證ASP.NETMVC非同步
- jquery 外掛站jQuery
- 從零開始實現ASP.NET Core MVC的外掛式開發(四) - 外掛安裝ASP.NETMVC
- JQuery外掛:圖片上傳本地預覽外掛,改進案例一則。jQuery
- struts 應用結合tomcat進行ssl認證Tomcat