我需要对有关 jQuery Validator 显示的错误的工具提示进行分组。所以我用 setInterval 编写了一个简单的循环来检查同一行中是否有多个具有错误类的输入。
setInterval(function() {
$('.xrror').remove();
$('div.row-4:has([name].error)').each(function() {
var tmp = $('[name].error', this);
if(tmp.length > 1) {
$('label.error', this).hide();
tmp.last().parent().append(
$(document.createElement('label')).addClass('error').addClass('xrror').append(
$(document.createElement('span')).text('Fields with errors were marked with red color')
)
);
} else {
$('[name].error', this).parent().find('label.error').show();
}
});
}, 50);
在 Opera 中,它会导致打开的 Select 元素闪烁。