Я пришел к этому сообщению после того, как столкнулся с той же проблемой, заполнив ее, а затем очистил обязательное поле формы. Я использовал пример слияния формы начальной загрузки Twitter с разметкой jquery.validate.js, найденной здесь: http://alittlecode.com/jquery-form-validation-with-styles-from-twitter-bootstrap/
Я решил, используя следующий код:
onfocusout: function(label) {
if($(label).val() == ''){
$(label).closest('.control-group').removeClass('success');
}
}
Вот полный сценарий в контексте:
$(document).ready(function() {
$('#contact_form').validate({
rules: {
name: {
minlength: 2,
required: true
},
email: {
required: true,
email: true
},
message: {
minlength: 2,
required: true
}
},
onfocusout: function(label) {
if($(label).val() == ''){
$(label).closest('.control-group').removeClass('success');
}
},
highlight: function(label) {
$(label).closest('.control-group').addClass('error');
},
success: function(label) {
label
.text('OK!').addClass('valid')
.closest('.control-group').addClass('success');
},
submitHandler: function(form) {
$(form).ajaxSubmit({
target: '#success',
success: function() {
$('#contact_form_wrapper').hide();
$('#success').html('<h3>Thank you for your enquiry</h3><p class="intro-text">We will endeavour to respond to your message within 72 hours.</p>').fadeIn('slow');
}
});
}
});
});