ASP.NET MVC 3.0 Razor 学习笔记之三
ASP.NET MVC 3.0 Razor 和 ASP.NET 2.0 的 Razor 使用jquery 验证差别不是很大,2.0 是我们自己在页面写的ID ,3.0 Razor 自动使用我们的属性值作为ID。
继续昨天的学习,在页面引用jqeury类库,在Scripts文件夹里面有。
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
然后注释我们后台的ajax 验证,如果是DataTime类型,MVC 框架会强制的验证,不管你是否在属性上面贴了 [Required]
public class News
{
//[Required]
[Display(Name = "公告名称")]
public string NewsName { get; set; }
// [Required]
[Display(Name = "创建时间")]
public DateTime CreateDate { get; set; }
// [Required]
[Display(Name = "公告类型")]
public string NewsType { get; set; }
// [Required]
[Display(Name = "公告类容")]
public string Content { get; set; }
}
然后我们在View 里面写jqeury 代码来验证,建立一个newsvalidate.js
$(document).ready(function () {
$("#submit").click(function () {
if ($("#NewsName").attr("value") == "" || $("#CreateDate").attr("value") == "") {
if ($("#NewsName").attr("value") == "") {
alert("消息名称不能为空");
}
if ($("#CreateDate").attr("value") == "") {
alert("创建时间不能为空");
}
}
})
});
页面引用 :
<script src="@Url.Content("~/Scripts/newsvalidate.js")" type="text/javascript"></script>
@model RazorApplication.Models.News
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/newsvalidate.js")" type="text/javascript"></script>
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<fieldset>
<legend>News</legend>
<div class="editor-label">
@Html.LabelFor(model => model.NewsName)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.NewsName)
@Html.ValidationMessageFor(model => model.NewsName)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.CreateDate)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.CreateDate)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.NewsType)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.NewsType)
@Html.ValidationMessageFor(model => model.NewsType)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.Content)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Content)
@Html.ValidationMessageFor(model => model.Content)
</div>
<p>
<input id="submit" type="submit" value="Create" />
</p>
</fieldset>
}
然后验证结果:

后面继续补充,json 的应用!
出处:http://www.cnblogs.com/liuyong/
作者喜欢研究 Sql Server ,ASP.NET MVC , Jquery WCF 等技术,同时关心分布式架构的设计应用。转载请保留原文链接,谢谢!
浙公网安备 33010602011771号