日期:2014-05-16  浏览次数:20285 次

jquery.validate.js 调整错误信息显示位置

在验证checkbox和radio控件或者输入框后面有提示文字的时后,验证信息不会出现在最后的控件文本后面,而是直接跟在第一个控件的后面,不符合我们的要求。

验证码框

解决办法是在validate({})追加以下代码:

rules:{

……

},

errorPlacement: function(error, element) { 
    if ( element.is(":radio") ) 
        error.appendTo ( element.parent() ); 
    else if ( element.is(":checkbox") ) 
        error.appendTo ( element.parent() ); 
    else if ( element.is("input[name=captcha]") ) 
        error.appendTo ( element.parent() ); 
    else 
        error.insertAfter(element); 
} 
最后的else不能少,否则就只会验证if 和else if的而其他的就不会验证

将错误信息显示在输入框的下面
errorPlacement: function(error, element) 
{  
    $('<br/>').appendTo(element.parent());   
    error.appendTo(element.parent());
}
怎么与输入框对齐还不清楚,有知道的告知下,不胜感激。