当前位置: 首页 > 中文手册 > jQuery Validator renderError 自定义错误渲染行为

jQuery Validator renderError 自定义错误渲染行为

jQuery Validator的renderError()方法用于处理表单校验不通过时的错误渲染。简而言之,你可以通过重写该方法自定义界面上错误信息的提示方式。

如果你不自定义错误渲染行为,jQuery Validator 默认的renderError()方法将采用jQuery对象实例的tips(message)方法来提示错误信息(message)。如果该方法不存在(如果你没有定义该方法的话),则使用window.alert(message)来提示错误信息。

jQuery Validator 推荐你使用layer来扩展jQuery对象实例的tips()方法,从而进行常规表单的错误信息提示。例如:

// 为了让提示更美观,扩展jQuery原型对象,添加基于layer支持的tips方法
$.fn.tips = function(msg, delay){
	layer.tips(msg, this, delay || 3000);
};

当然,jQuery Validator也支持自定义renderError(),你可以完全按照自己的方式来进行错误渲染。

语法

jQuery Validator 1.0 新增。jQuery Validator支持通过以下3种方式自定义renderError()

// 自定义全局(所有实例可用)的renderError()
V.fn.renderError = handler;

// 自定义当前实例(仅该实例可用)的renderError()
v.renderError = handler;

// 自定义当前校验规则(仅该校验规则可用)的renderError()
// 在校验规则对象中指定该属性
renderError: handler

参数

参数描述
handlerFunction类型指定的错误渲染处理函数。

jQuery Validator会为函数handler传入如下参数:

function(message, $target, context){
	// message 用于直接显示的错误提示信息
	
	// $target 当前用于错误渲染的表单元素的jQuery对象
	// 除非校验规则中指定了errorFocus,该表单元素一般就是校验不通过的表单元素
	// 如果不是基于表单输入的校验,$target一般为null
	
	// context 本次校验的上下文对象
	
	// this 指向当前jQuery Validator 实例
}

如果同时存在多种方式的renderError(),则按照如下优先级选取第一个存在的renderError()

// renderError()的优先级
当前校验规则的 > 当前实例的 > 全局的

示例&说明

以如下HTML表单为例:

<form action="http://www.365mini.com/">
	<div>
		<label>用户名</label>:
		<input id="username" name="username" type="text" >
	</div>	
	<input type="submit" value="提交" />
</form>

我们可以使用renderError()在校验规则中自定义错误渲染行为:运行代码

// 在表单提交时执行校验
$("form").v("submit", {
	"#username": {
		extend: "username", // 继承内置的"username"规则
		renderError: function(message, $target, context){
			alert("这是自定义的错误提示方式:" + message);			
		}
	}
});
9 3
我们认为: 用户的主要目的,是为了获取有用的信息,而不是来点击广告的。因此本站将竭力做好内容,并将广告和内容进行分离,确保所有广告不会影响到用户的正常阅读体验。用户仅凭个人意愿和兴趣爱好点击广告。
我们坚信:只有给用户带来价值,用户才会给我们以回报。
CodePlayer技术交流群1CodePlayer技术交流群1

帮朋友打一个硬广告:

P2P网贷系统(Java版本) 新年低价大促销,多年P2P技术积累,系统功能完善(可按需定制,可支持第三方存管、银行存管),架构稳定灵活、性能优异、二次开发快速简单。 另可提供二次开发、安装部署、售后维护、安全培训等一条龙服务。

外行看热闹,内行看门道。可以自信地认为,在系统设计上,比市面上的晓风、迪蒙、方维、绿麻雀、国融信、金和盛等P2P系统要好。
深圳地区支持自带技术人员现场考察源代码、了解主要技术架构,货比三家,再决定是否购买。

也可推荐他人购买,一旦完全成交,推荐人可获得实际售价 10% 的返现。
有意向者,详情请 点击这里 联系,工作时间立即回复。