验证时无法删除错误消息

时间:2019-04-12 08:56:17

标签: javascript jquery

我正在测试学习表单验证,无法删除错误文本。 HTML代码就是这样

        <div class="form-group">
            <label for="">Requester<span class="required text-danger">*</span></label>
            <input type="text" class="form-control">
            <small style="display: none"></small>
        </div>

使用Jquery进行验证

var errors = 0;
var submitted = false;

var addError = function (element, siblings, errorMessage) {
    if (element.style.display == "none") {
        console.log(element);
        return;
    }

    errors++;
    $(element).addClass("text-error")

    siblings.each(function (index, sib) {
        if (sib.tagName == "SMALL") {
            sib.innerText = errorMessage
            $(sib).addClass("text-danger");
            $(sib).addClass("font-weight-bold");
            $(sib).show();
        }
    })
};

以及用于清除错误的功能

var removeError = function (element, siblings) {
    $(element).removeClass("text-error");

    siblings.each(function (index, sib) {
        if (sib.tagName == "SMALL") {
            sib.innerText = ""
            $(sib).removeClass("text-danger");
            $(sib).removeClass("font-weight-bold");
            $(sib).hide();
        }
    })
};

当我删除<small style="display: none"></small><span class="required text-danger">*</span>时,它没有进行任何更改,仍然显示红色错误框和Sweetalert.js消息, 无论如何,我可以使其正常工作,如何删除非必填字段的错误。 参考笔链接:https://codepen.io/dunya/pen/KYdQPd 非常感谢

0 个答案:

没有答案