初学MVC中对输入文本的即时验证方法

首先在model中定义字段规则:

    [MetadataType(typeof(reciveModel))] //reciveModel就是下面定义的字符规则
    public class reciveModel
    {
        [Required(ErrorMessage="必须输入")]
        public string name { get;set ;}

        [Range(110, ErrorMessage = "输入数字必须是1-10")]
        public string remark { getset; }
    }


  

然后视图页面Inherits必须包含model的强类型;
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<MVC4_26.Models.reciveModel>" %>
引用两个MVC带的JS,MicrosoftAjax.js、MicrosoftMvcValidation.js(必须引用,否则不显示错误信息)
在视图代码中添加“<% Html.EnableClientValidation();%>”,对应文本框下添加“<%=Html.ValidationMessageFor(x=>x.name) %>”,就OK了。
      

       <% Html.EnableClientValidation();%> //必须添加,否则不能显示错误信息
       <% using (Html.BeginForm("Receive","Study")){ %>
       <%=Html.TextBoxFor(x =>x.name) %>
       <%=Html.ValidationMessageFor(x=>x.name) %>
       <br/>
       <%=Html.TextBoxFor(x=>x.remark) %>
       <%=Html.ValidationMessageFor(x=>x.remark) %>
       <br/><br/>

结果如下图:

 

posted @ 2012-04-27 17:26  馨语随风  阅读(368)  评论(0)    收藏  举报