在ASP.NET MVC中使用Knockout实践07,自定义验证信息的位置与内容
2014-11-03 09:53
495 查看
在前两篇中,体验了Knockout的基本验证和自定义验证。本篇自定义验证信息的显示位置与内容。自定义验证信息的显示位置通常,Knockout的验证信息紧跟在input后面,通过validationMessage属性可以自定义验证信息的显示位置。
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<style type="text/css">
.error {
color: red;
}
</style>
<div>
<input type="text" data-bind="value: name"/>
<p class="error" data-bind="validationMessage: name"></p>
</div>
@section scripts
{
<script src="~/Scripts/knockout-3.2.0.js"></script>
<script src="~/Scripts/knockout.validation.js"></script>
<script src="~/Scripts/zh-CN.js"></script>
<script type="text/javascript">
//使用构造函数创建一个View Model
var Product = function () {
this.name = ko.observable().extend({ minLength: 3 });
};
//创建实例
var product = new Product();
//验证设置
var knockoutValidationSettings = {
insertMessages: false,
decorateElement: false,
errorMessageClass: 'error',
errorElementClass: 'error',
errorClass: 'error',
errorsAsTitle: true,
parseInputAttributes: false,
messagesOnModified: true,
decorateElementOnModified: true,
decorateInputElement: true
};
ko.validation.init(knockoutValidationSettings, true);
//绑定
ko.applyBindings(product);
$(function () {
ko.decorateElement = false;
});
</script>
}以上,● 把验证信息显示在了data-bind属性值为validationMessage: name的input上● 由于重新设置了Knockout-Validation,必须使用ko.validation.init()重新初始化● insertMessages表示是否把验证信息显示在紧跟input的位置● decorateElement表示是否要为input加上class="error"自定义验证信息的内容如果想重写验证信息的内容,修改如下:
var Product = function () {
this.name = ko.observable().extend({ minLength: { params: 3, message: "要我说最小长度是3" } });
};
相关文章推荐
- 在ASP.NET MVC中使用Knockout实践06,自定义验证、异步验证
- 在ASP.NET MVC中使用Knockout实践09,自定义绑定
- 在ASP.NET MVC中使用Knockout实践04,控制View Model的json格式内容
- 在ASP.NET MVC中使用Knockout实践05,基本验证
- Asp.net MVC验证那些事(1)-- 介绍和验证规则使用----[转]--[并修改了部分内容]
- ASP.NET MVC: 使用自定义 ModelBinder 过滤敏感信息
- 在ASP.NET MVC中使用Knockout实践03,巧用data参数
- ASP.NET中MVC使用AJAX调用JsonResult方法并返回自定义错误信息
- ASP.NET自定义身份验证的实践(Page.User.Identity.Name的使用)
- 在ASP.NET MVC中使用Knockout实践01,绑定Json对象
- ASP.NET MVC 3 使用Model自定义验证的样式
- ASP.NET MVC: 使用自定义 ModelBinder 过滤敏感信息
- ASP.NET中MVC使用AJAX调用JsonResult方法并返回自定义错误信息
- 翻译:使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 4 - 验证
- 在ASP.NET MVC中使用Knockout实践08,使用foreach绑定集合
- 使用asp.net mvc,boostrap及knockout.js开发微信自定义菜单编辑工具(推荐)
- 在ASP.NET MVC中使用Knockout实践02,组合View Model成员、Select绑定、通过构造器创建View Model,扩展View Model方法
- ASP.NET Web API实践系列07,获取数据, 使用Ninject实现依赖倒置,使用Knockout实现页面元素和视图模型的双向绑定
- 在ASP.NET MVC Framework中使用IErrorDataInfo接口实现验证(翻的)
- 使用 ExtJS 实现 ASP.NET MVC 2 客户端验证