JQuery Validator-规则特定的errorPlacement

时间:2012-04-26 14:01:42

标签: javascript jquery validation 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
    }

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

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

1 个答案:

答案 0 :(得分:9)

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

<label class="error">Error message here</label>

因此,如果您希望以不同的方式放置消息,如果消息为&#34;请勿执行此操作&#34;,您可以:

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);
}