15-模型验证-客户端验证

客户端验证是通过js 来的 所以是不安全的。但是可以挡住大部分的普通用户。

危险用户 可能会把 js去掉

一个严谨的系统应该包含 客户端 和服务端

但是客户端的验证 可以大大减轻服务器端的压力。

客户端的验证 需要我们

引入js

<script src="~/lib/jquery/dist/jquery.js"></script>
<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>Code language: HTML, XML (xml)

通过mvc自定义的属性 来显示错误信息

@model FirstCoreMVC.Models.UserInfo

@{
    ViewData["Title"] = "Register";
}

<script src="~/lib/jquery/dist/jquery.js"></script>
<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>

<h2>注册</h2>

<form method="post" action="/user/register?id=12">
    <div class="form-group">
        <label asp-for="Name" class="col-md-2 control-label"></label>
        <div class="col-md-10">
            <input asp-for="Name" class="form-control" />
            <span asp-validation-for="Name" class="text-danger"></span>
        </div>
    </div>
    <div class="form-group">
        <label asp-for="Password" class="col-md-2 control-label"></label>
        <div class="col-md-10">
            <input asp-for="Password" class="form-control" />
            <span asp-validation-for="Password" class="text-danger"></span>
        </div>
    </div>
    <div class="form-group">
        <label asp-for="Comfirmpassword" class="col-md-2 control-label"></label>
        <div class="col-md-10">
            <input asp-for="Comfirmpassword" class="form-control" />
            <span asp-validation-for="Comfirmpassword" class="text-danger"></span>
        </div>
    </div>
    <input type="submit" value="提交" />
</form>Code language: HTML, XML (xml)

格式化错误提示信息

//增加这个标注 则这个属性 必须绑定 如果没有绑定 则会抛出错误的
[BindRequired] 
[Display(Name="用户名")]
[StringLength(maximumLength:15,MinimumLength =6)]
public string Name { get => name; set => name = value; }

[Required]
[Display(Name = "密码")]
public string Password { get => password; set => password = value; }

[Display(Name = "确认密码")]
[Compare("Password",ErrorMessage = "{0}和{1}必须一样")]
public string Comfirmpassword { get => comfirmpassword; set => comfirmpassword = value; }Code language: PHP (php)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注