JQuery Validator-规则特定的errorPlacement

Aid*_*wen 6 javascript validation jquery errorplacement

我正在使用jquery验证器.

我有一个自定义规则应用于我的表单中的一组元素.这些输入还可能具有与之关联的其他(标准)规则.如果元素未通过我的自定义规则,我需要将错误消息放在一个地方,如果元素未通过标准规则,则需要将错误消息放在另一个地方.

我需要像 -

errorPlacement: function(error, element) {
    if (error == MyCustomError) {
        // put my error at the top of the form
    } else {
        // put my error next to the element
    }
Run Code Online (Sandbox Code Playgroud)

我无法看到那个'错误'对象到底是什么(尝试使用firebug进行深入研究,但它没有提供足够的信息).

突出显示选项更加困难,因为我甚至没有使用'error'参数.

Smi*_*yan 9

error是由jQuery Validate添加的整个错误标签HTML元素,即:

<label class="error">Error message here</label>
Run Code Online (Sandbox Code Playgroud)

因此,如果您希望以不同的方式放置消息,如果消息是"不要这样做",您可以:

errorPlacement: function(error, element) {
if (error.text() == "Do not do this") {
    error.insertBefore("SELECT FIRST ELEMENT IN THE FORM HERE USING STANDARD JQUERY SELECTORS");
} else {
    error.insertAfter(element);
}
Run Code Online (Sandbox Code Playgroud)