我一直在尝试将简单的淡入淡出过渡(例如fadeToggle();
)应用到jQuery Validation plugin,但没有运气。这是我的代码:
$.validator.setDefaults({
// Add fadeToggle(); to showErrors
});
$("#login_form").validate();
$("#login_form").submit(function(event) {
event.preventDefault();
if($("#login_form").valid()) {
$.post("/user/ajax_login", $('#login_form').serialize(), function(data) {
if(data.redirect != null) {
window.location.replace(data.redirect);
}
},'json');
}
});
是否有一种简单的方法可以添加此淡入淡出过渡?
答案 0 :(得分:2)
一个非常简单的答案:
您已经使用valid()
方法检查是否有错误...为什么不使用它?
例如:
if($('#login_form').valid()) {
// everything seams fine, lets submit the form
$.post("/user/ajax_login", $('#login_form').serialize(), function(data) {
if(data.redirect != null) {
window.location.replace(data.redirect);
}
},'json');
}
else {
// there is some kind of validation error
$('label.error')
.hide() // by this time all .error classes are shown, let's hide them
.fadeIn('slow'); // and show them gently...
}