問題の画像: http ://tinypic.com/view.php?pic = 2duwlsp&s = 5
問題の説明: 1つの視覚的なバグを除いて、「機能している」jQueryフォーム検証があります。最初に検証エラーが発生すると、すべてが正常に表示されます。ただし、エラーを修正してからエラーを再発生させると、2回目に画像が表示されなくなります。
問題の写真については、上のスクリーンショットを参照してください。
私のコード:
<script type="text/javascript">
$(document).ready(function(){
$('#signupform').validate({
wrapper: 'span class="error"',
meta: 'validate',
highlight: function(element, errorClass, validClass) {
if (element.type === 'radio') {
this.findByName(element.name).addClass(errorClass).removeClass(validClass);
} else {
$(element).addClass(errorClass).removeClass(validClass);
}
// Show icon in parent element
var error = $(element).parent().find('span.error');
error.siblings('.icon').hide(0, function() {
error.show();
});
},
unhighlight: function(element, errorClass, validClass) {
if (element.type === 'radio') {
this.findByName(element.name).removeClass(errorClass).addClass(validClass);
} else {
$(element).removeClass(errorClass).addClass(validClass);
}
// Hide icon in parent element
$(element).parent().find('span.error').hide(0, function() {
$(element).parent().find('span.valid').fadeIn(200);
});
},
"rules":{"username":{"required":true,"remote":{"url":"http:\/\/localhost\/welcome\/remote","type":"post"}}},"onkeyup":false});
});
</script>
私が試したこと:ハイライト機能とハイライト解除機能を見てみました。私の「推測」は、エラーが「ハイライト解除」セクションにあることです。これは、2番目のエラー(つまり、ハイライト、ハイライト解除、ハイライト->エラー)の後にのみ発生するためです。
だから多分私は私がすべきではないものを削除していますか?