/**
* 验证失败增加提示信息
* @param {} error
* @param {} element
* @returns {}
*/
function errorPlacementQTip(error,element){
var elem = $(element),
corners = ['left top', 'bottom left'],
flipIt = elem.parents('span.right').length > 0;
if(!error.is(':empty')) {
var target=elem.filter(':not(.valid)');
//对应multiselect控件
if($(target).is("input:hidden")||($(target).is("select")&&$(target).css("display")=="none")){
target=$(target).next();
}
elem.filter(':not(.valid)').qtip({
overwrite: false,
content: error,
position: {
my: corners[ flipIt ? 0 : 1 ],
at: corners[ flipIt ? 1 : 0 ],
target: target,
viewport: $(window)
},
show: {
event: false,
ready: true
},
hide: false,
style: {
classes: 'qtip-red' // Make it red... the classic error colour!
}
}).qtip('option', 'content.text', error);
}else {
elem.qtip('destroy');
}
}
/**
*验证成功清理提示信息
* @returns {}
*/
function successQTip(){
$.noop;
}
/**
* 验证失败给目标控件设置样式
* @param {} element
* @param {} errorClass
* @param {} validClass
* @returns {}
*/
function highlight(element , errorClass, validClass){
//对应multiselect控件
if($(element).is("input:hidden")||($(element).is("select")&&$(element).css("display")=="none")){
element=$(element).next();
}
$(element).addClass("ui-state-highlight");
}
/**
* 验证成功给目标控件清理样式
* @param {} element
* @param {} errorClass
* @param {} validClass
* @returns {}
*/
function unhighlight(element, errorClass, validClass){
var elem = $(element);
elem.qtip('destroy'); //清除qtip提示信息(解决动态验证问题:如某个控件在满足某些条件下非空;某些条件下可空)
//对应multiselect控件
if($(element).is("input:hidden")||($(element).is("select")&&$(element).css("display")=="none")){
element=$(element).next();
}
$(element).removeClass("ui-state-highlight");
}
将Qtip与jquery validate结合显示
最新推荐文章于 2020-07-20 10:12:00 发布