工作演示:http: //jsfiddle.net/bvu5f/
这个答案使用了一个名为Tooltipster的 jQuery 插件以及 jQuery Validate 插件。
首先,在所有将显示错误的特定元素上初始化 Tooltipster 插件(使用任何选项) :form
$(document).ready(function () {
// initialize tooltipster on form input elements
$('#myform input[type="text"]').tooltipster({
trigger: 'custom', // default is 'hover' which is no good here
onlyOne: false, // allow multiple tips to be open at a time
position: 'right' // display the tips to the right of the element
});
});
其次,使用Tooltipster 的高级选项以及Validate 插件中内置的回调函数success:
来errorPlacement:
自动显示和隐藏工具提示,如下所示:
$(document).ready(function () {
// initialize validate plugin on the form
$('#myform').validate({
// any other options & rules,
errorPlacement: function (error, element) {
$(element).tooltipster('update', $(error).text());
$(element).tooltipster('show');
},
success: function (label, element) {
// $(element).tooltipster('hide'); // normal validate behavior
$(element).tooltipster('update', 'accepted'); // as per OP
}
});
});
代码利用了 2013 年 2 月 12 日在 2.1 版中发布的新 Tooltipster API 功能