jQuery.ValidationEngine - 移除错误弹出窗口

8
有没有人知道我如何使用一个命令移除ValidationEngine创建的所有错误?我添加了这个插件似乎用来创建弹出窗口的代码片段。如果你需要更多信息,请让我知道。
以下代码创建了这些错误:
buildPrompt : function(caller,promptText,type,ajaxed) {         // ERROR PROMPT CREATION AND DISPLAY WHEN AN ERROR OCCUR

        if(!$.validationEngine.settings){

            $.validationEngine.defaultSetting()

        }

        deleteItself = "." + $(caller).attr("id") + "formError"



        if($(deleteItself)[0]){

            $(deleteItself).stop();

            $(deleteItself).remove();

        }

        var divFormError = document.createElement('div');

        var formErrorContent = document.createElement('div');

        linkTofield = $.validationEngine.linkTofield(caller)

        $(divFormError).addClass("formError")



        if(type == "pass") $(divFormError).addClass("greenPopup")

        if(type == "load") $(divFormError).addClass("blackPopup")

        if(ajaxed) $(divFormError).addClass("ajaxed")



        $(divFormError).addClass(linkTofield);

        $(formErrorContent).addClass("formErrorContent");

源代码:http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/ 问题:当用户在屏幕上出现错误并单击滚动到页面的另一部分的链接时,错误消息将保留在绝对位置。
我需要的是一个函数,可以删除所有错误消息,可能会有多个。
3个回答

11

它在验证引擎中还有预定义的函数。

$('#formID1').validationEngine('hideAll');

5
function removeError(){$(".formError").remove()};

这很简单……我为什么要花那么长时间才理解呢。删除所有带有.formError类的内容就可以消除所有弹出窗口。


1
以下答案中的标准解决方案($('#formID1').validationEngine('hideAll');)更可取。 - aholub7x
Ryu 给出了预期的方法。 - Mike Devenney

0
我正在使用类似于这样的代码 css

.formError{
-moz-animation: cssAnimation 0s ease-in 3s forwards;
/* Firefox */
-webkit-animation: cssAnimation 0s ease-in 3s forwards;
/* Safari and Chrome */
-o-animation: cssAnimation 0s ease-in 3s forwards;
/* Opera */
animation: cssAnimation 0s ease-in 3s forwards;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;}

@keyframes cssAnimation {
to {
    width:0;
    height:0;
    overflow:hidden;
}}

@-webkit-keyframes cssAnimation {
to {
    width:0;
    height:0;
    visibility:hidden;
}}

然后我会添加这个JS代码

jQuery(document).on('animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd', '.formError', function (e) {
        e.target.remove();
    });

它将逐条删除消息 :) - FLORIN-CATALIN Marin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接