一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - 支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

2019-12-17 12:51junjie ASP.NET教程

這篇文章主要介紹了支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹,本文詳細講解了使用步驟,并給出一個完整Demo下載,需要的朋友可以參考下

1、支持javascript端和后端的雙重驗證 (前端目前依賴于jquery.validate.js,也可以自已擴展)

2、代碼簡潔

3、調用方便

4、功能齊全

使用方法:

新建初始化類,將所有需要驗證的在該類進行初始化,語法相當簡潔并且可以統一管理,寫完這個類你的驗證就完成了70%

函數介紹:

Add 默認類型(郵件、手機、qq等)

AddRegex 正則驗證 在Add無法滿足情部下使用

addFunc 使用js函數進行驗證,一般用于業邏輯的驗證 ,功能非常強大,可以滿足各種驗證(注意:addFunc 函數驗證后 后臺需要重新驗證,所以能用上兩種方法驗證的,盡量使用上面的)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SyntacticSugar;
 
namespace ValidationSuarMVC.Models
{
  public class Validates
  {
    public static void Init()
    {
 
 
      //login
      ValidationSugar.Init(PageKeys.LOGIN_KEY,
        ValidationSugar.CreateOptionItem().Set("userName", true/*是否必填*/, "用戶名").AddRegex("[a-z,A-Z].*", "用戶名必須以字母開頭").AddRegex(".{5,15}", "長度為5-15字符").AddFunc("checkUserName", "用戶名不存在,輸入 admin1 試試").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("password", true, "密碼").AddRegex("[0-9].*", "用戶名必須以數字開頭").AddRegex(".{5,15}", "長度為5-15字符").ToOptionItem()
        );
 
      //register
      ValidationSugar.Init(PageKeys.REGISTER_KEY,
        ValidationSugar.CreateOptionItem().Set("userName", true, "用戶名").AddRegex("[a-z,A-Z].*", "用戶名必須以字母開頭").AddRegex(".{5,15}", "長度為5-15字符").AddFunc("checkUserName", "用戶名已存在!").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("password", true, "密碼").AddRegex(".{5,15}", "長度為5-15字符").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("password2", true, "密碼").AddRegex(".{5,15}", "長度為5-15字符").AddFunc("confirmPassword", "密碼不一致").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("sex", true, "性別").AddRegex("0|1", "值不正確").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("email", true, "郵箱").Add(ValidationSugar.OptionItemType.Mail, "郵箱格式不正確").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("mobile", false, "手機").Add(ValidationSugar.OptionItemType.Mobile, "手機格式不正確").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("qq", false, "qq").AddRegex(@"\d{4,15}", "qq號碼格式不正確").ToOptionItem(),
        ValidationSugar.CreateOptionItem().Set("education", true, "學歷", true/*checkbox 多選模式*/).AddRegex(@"\d{1,15}", "值不正確").ToOptionItem()
        );
    }
  }
}

Global.cs注冊我們就可以用了

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

驗證大多情況下分兩種

1、submit提交的寫法

Register 一行代碼搞定、獲取綁定信息交給viewbag

PostRegister 也是一行完成后臺驗證

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

view

1、引用js并寫好初始化函數

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

2、將@Html.Raw(ViewBag.validationBind) 放在頁面最下方

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

VIEW完整代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
@{
  ViewBag.Title = "Register";
  Layout = null;
}
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script src="/Content/jquery-validation-1.13.1/lib/jquery-1.9.1.js" type="text/javascript"></script>
  <script src="/Content/jquery-validation-1.13.1/dist/jquery.validate.js" type="text/javascript"></script>
  <script src="/Content/validation.sugar.js" type="text/javascript"></script>
  <script src="/Content/jquery-validation-1.13.1/lib/jquery.form.js" type="text/javascript"></script>
  <link href="/Content/jquery-validation-1.13.1/validation.sugar.css" rel="stylesheet"
    type="text/css" />
  <script type="text/javascript">
    $(function () {
      var factory = new validateFactory($("form"), "<img src=\"/Content/jquery-validation-1.13.1/error.png\" />");
      factory.init();
 
    });
 
    //用戶名是否已存在
    function checkUserName() {
      //實際開發換成: ajax async:false
      var userName = $("[name=userName]").val();
      if (userName == "admin1" || userName == "admin2") {
        return false;
      }
      return true;
    }
 
    //驗證密碼是否一致
    function confirmPassword() {
      return $("[name=password]").val() == $("[name=password2]").val();
    }
 
  </script>
  <style>
    td
    {
      height: 30px;
      padding: 5px;
    }
  </style>
</head>
<body>
  <h3>
    基于jquery.validate的前后臺雙驗證</h3>
  <form method="post" class="form" id="form1" action="/home/postRegister">
  <table>
    <tr>
      <td>
        name
      </td>
      <td>
        <input type="text" name="userName">
      </td>
    </tr>
    <tr>
      <td>
        password
      </td>
      <td>
        <input type="password" name="password" />
      </td>
    </tr>
    <tr>
      <td>
        confirm password
      </td>
      <td>
        <input type="password" name="password2" />
      </td>
    </tr>
    <tr>
      <td>
        sex
      </td>
      <td>
         <input type="radio" value="1" name="sex" />
          
          <input type="radio" value="0" name="sex" />
          
      </td>
    </tr>
    <tr>
      <td>
        email
      </td>
      <td>
        <input type="text" name="email" />
      </td>
    </tr>
    <tr>
      <td>
        mobile
      </td>
      <td>
        <input type="text" name="mobile" />
      </td>
    </tr>
    <tr>
      <td>
        qq
      </td>
      <td>
        <input type="text" name="qq" />
      </td>
    </tr>
    <tr>
      <td>
        education
      </td>
      <td>
        <p>
          <input type="checkbox" value="1" name="education" />
          本科
          <input type="checkbox" value="2" name="education" />
          幼兒園
          <input type="checkbox" value="3" name="education" />
          小學
        </p>
      </td>
    </tr>
  </table>
  <button type="submit">
    submit提交(禁掉瀏覽器JS進行測試)</button>
  @Html.Raw(ViewBag.validationBind)
  </form>
</body>
</html>

就這么幾行代碼就完了一個注冊

效果如下:  

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

對css支持還是不錯的可以。自已美化

2、ajax寫法

把submit改成button,在寫個事件搞定

支持ASP.NET MVC、WebFroM的表單驗證框架ValidationSuar使用介紹

DEMO下載:

sunkaixuan-ValidationSuarMVC-master.zip

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: a在线观看欧美在线观看 | 国产午夜精品一区二区 | 美女主播免费观看 | 白丝校花被扒开双腿喷水小说 | 欧洲网色偷偷亚洲男人的天堂 | 日本中文字幕永久在线 | 女教师巨大乳孔中文字幕免费 | 午夜国产福利视频一区 | 精品久久久久久综合网 | 久草在线福利视频在线播放 | 海派甜心完整版在线观看 | 国产aaa伦理片 | 2021国产精品成人免费视频 | 亚洲 欧美 国产 综合 播放 | 成人欧美一区在线视频在线观看 | 三年片韩国在线观看 | 国产综合色在线视频区色吧图片 | 亚洲va欧美va天堂v国产综合 | 精品国产成a人在线观看 | 无人在线视频高清免费播放 | 女性性色生活片免费观看 | 久久99热狠狠色AV蜜臀 | 亚洲人成影院午夜网站 | 王王的视频ivk | 久久99国产精品二区不卡 | 男男浴室吸乳play | www.久久精品视频 | 精品国产福利在线观看一区 | 我要看免费毛片 | 99久久精品免费观看区一 | 国产成人v爽在线免播放观看 | 无限资源在线观看完整版免费下载 | 日本噜噜影院 | 欧美色精品天天在线观看视频 | 亚洲高清国产拍精品影院 | 亚洲a视频在线 | 日本a在线天堂 | 国产精品区一区二区免费 | 欧美日韩亚洲成人 | 欧美成人精品第一区二区三区 | 亚洲va久久久久 |