2 つの必須フィールドを持つ単純なフォームがあり、エラー メッセージはスライド アウト div に配置されます。フォームに入力しないと、検証は正常に機能し、エラー メッセージが表示されますが、フィールドに入力すると、エラー メッセージが表示され続けます。ここでいくつかの解決策を試しましたが、何も機能せず、何が原因なのかわかりません。これが私のコードです:HTML
<form id="login_form" method="post">
<ul>
<li>
<label for="user">Gebruikersnaam</label>
<input type="text" name="user" id="user" />
</li>
<li>
<label for="paswoord">Paswoord</label>
<input type="password" name="password" id="paswoord" />
</li>
<li>
<input class="btn black" type="submit" value="Login" />
<span id="password" ><a href="#">Wachtwoord vergeten?</a></span>
</li>
</ul>
</form>
Jクエリ
var validator = $('#login_form').validate({
rules: {
user: {
required: true},
password: {
required: true},
},
onfocusout: true,
invalidHandler: function(form, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
var message = errors == 0
? 'You missed 1 field. It has been highlighted'
: 'You missed ' + errors + ' fields. They have been highlighted';
$("div.error span").html(message);
$("div.error").hide().slideDown('slow');
setTimeout(function(){$("div.error").slideUp(); },10000);
} else {
$("div.error").hide();
}
},
submitHandler: function(form){
$("div.ok").removeClass("error").hide().slideDown('slow');
setTimeout(function(){$("div.ok").slideUp(); },10000);
}
});
jQuery.validator.messages.required = "";