jquery验证器 - 定制设计

时间:2012-05-28 10:27:20

标签: jquery

我有一组输入字段。如果其中任何一个不正确,我将在控件上方的气泡消息中显示它。我做的是:

errorPlacement: function(error, element) {
        error.insertAfter(element)
        var message = error.html();
        error.html('<div class="innerError"><div class="message">' + message + '</div><div class="corner"></div></div>');
    }

现在,当字段无效时,消息按预期显示,但是当我将焦点移出字段时,不更改它,或者即使我更改它,内部div(消息)仍然是...

先谢谢!

1 个答案:

答案 0 :(得分:0)

一个简单的例子,验证文本框

<form action="/">
    <input type="text" /><span class="error"></span><br />
    <input type="submit" value="submit" />
</form>

$(function () {

    $('input:submit').click(function (e) {

        $('input:text').each(function () {
            if ($(this).val() == "") {
                e.preventDefault();
                $(this).parent().find('span').html("input text is blank");
            }
        });

    });

    $('input:text').blur(function () {
        if ($(this).val() != "") {
            $(this).parent().find('span').text("");
        }
    });

});

所以基本上你需要应用.blur事件(焦点输出)并重新验证输入 如果有效,则删除错误消息,否则将其保留。