jquery validate.js
onfocusin: function (element, event) { this.lastActive = element; // hide error label and remove error class on focus if enabled if (this.settings.focusCleanup && !this.blockFocusCleanup) { if (this.settings.unhighlight) { this.settings.unhighlight.call(this, element, this.settings.errorClass, this.settings.validClass); } this.addWrapper(this.errorsFor(element)).hide(); } //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ this.element(element); if (this.errorList && this.errorList.length > 0) { $("#" + element.id).tooltip({ position: 'right', showEvent: 'none', hideEvent: 'none', content: this.errorList[0].message }).tooltip('show'); } //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ }, onfocusout: function (element, event) { if (!this.checkable(element) && (element.name in this.submitted || !this.optional(element))) { this.element(element); } //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $("#" + element.id).tooltip({ position: 'right', showEvent: 'none', hideEvent: 'none', content: '' }).tooltip('hide') if (!this.errorList || this.errorList.length <= 0) { $("#" + element.id).tooltip({ position: 'right', showEvent: 'none', hideEvent: 'none', content: '' }).tooltip('destroy'); } //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ }, onkeyup: function (element, event) { if (event.which === 9 && this.elementValue(element) === "") { return; } else if (element.name in this.submitted || element === this.lastElement) { this.element(element); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ if (this.errorList && this.errorList.length > 0) { $("#" + element.id).tooltip({ position: 'right', showEvent: 'none', hideEvent: 'none', content: this.errorList[0].message }).tooltip('show'); } else { $("#" + element.id).tooltip({ position: 'right', showEvent: 'none', hideEvent: 'none', content: '' }).tooltip('destroy'); } //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ } },