18910140161

HTML-错误:jQuery用户名验证-堆栈溢出

顺晟科技

2022-10-18 14:15:56

237

当我尝试让名称

为假时,它应该让提交输入的边框颜色变为红色,但名称中没有发生任何事情。

身体

            <div id="name">
                <input type="text" id="inputName" placeholder="Name">
            </div>
            <input id="signup" type="submit" value="SIGN UP">

剧本

            function isName(inputName){
                var regex = /^[A-Za-z0-9\w]{4,20}*$/;
                return regex.test(inputName);
            }


            $("#signup").click(function ()
            {
                if (isName($("#inputName").val()) == false)
                {
                    $("#inputName").css("border-color", "#E33100");
                }
            })

顺晟科技:

<块引用>

/^[A-Za-z0-9\w]{4,20}*$/

正则表达式

无效..没有什么要重复

*本身不是有效的正则表达式字符

它必须以某些内容作为前缀,通常是..*=>;";.";任何字符,";*";重复任意次数(包括0次)。

您的*之前,您有{4,20},这意味着将上一组限制在4到20个字符之间。这对于要重复的内容无效。

删除*,正则表达式将正常工作。

function isName(inputName) {
  var regex = /^[A-Za-z0-9\w]{4,20}$/;
  return regex.test(inputName);
}


$("#signup").click(function() {
  console.log(isName($("#inputName").val()));
  if (isName($("#inputName").val()) == false) {
    $("#inputName").css("border-color", "#E33100");
  } else {
    $("#inputName").css("border-color", "green");
    }
})
<代码><;script SRC=“ https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js ”>;<;/script>;<;DIV ID=“ name ”>;<;input type=“ text ” ID=“ inputname ” placeholder=“ name ”>;<;/DIV>;<;输入ID=“注册” type=“提交” value=“注册”>;

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航