JQuery正则表达式检查输入值的长度不起作用

时间:2018-04-04 14:43:13

标签: jquery

对于模糊的标题感到抱歉,我不知道怎么称呼这个奇怪的'错误'。

我用JQuery检查输入。输入值必须不少于5个字符。

(当输入'昵称'的长度低于5时,它会显示红色错误消息)

我的正则表达式:[A-z0-9]{4}(从0开始)

var nicknameError = false;

$('input[name=nickname]').keypress(function() {
    if($('input[name=nickname]').val().match("[A-z0-9]{4}"))
    {
        if(nicknameError)
        {
            nicknameError = false;
            $('form').find('.nicknameError').remove()
        }
    }
    else
    {
        if(!nicknameError)
        {
            $('input[name=nickname]').after("<span class = 'nicknameError'>Le pseudo est composé d'au minimum 5 lettres.</span>");
            nicknameError = true;
        }
    }
});

它可以工作,但是当你开始删除几个字母时它确实会出错。看起来它在你写的时候有用,但在你擦除的时候却没有。

提前致谢:)

1 个答案:

答案 0 :(得分:1)

试试这个吗?

.nicknameError{
    display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="nickname">
<span class = 'nicknameError'>Le pseudo est composé d'au minimum 5 lettres.</span>
{{1}}