gpt4 book ai didi

javascript - 如何使用 JavaScript 只允许字母数字字符

转载 作者:可可西里 更新时间:2023-11-01 02:15:27 25 4
gpt4 key购买 nike

一直在玩 JavaScript,我想做的是只允许密码字段中的某些字符 - a-z、A-Z 和 0-9。

<form action="http://www.cknuckles.com/cgi/echo.cgi" method="get" name="logOn">
User Name:<br />
<input type="text" name="userName" size="25" /><br />
Password:<br />
<input type="password" name="pw" size="25" /><br />
<input type="submit" value="Log In" onClick="validate()"/>
</form>

上面是我的 HTML,下面是我试图用来验证它的 JavaScript - 但它不起作用 - 任何线索。

<script language="javascript">
document.logOn.onsubmit=validate;

function validate(){

var name=document.logOn.pw.value;
if(!name = "[a-zA-Z0-9]"){
alert("Your Password Cant Have Any Funky Things In It - Play It Straight!");
return false;
}

return true;
}
</script>

但这行不通。我仍然可以将字符放入“*”、“[”和“{”等。

有什么想法吗?

最佳答案

你需要让你的条件测试成为一个正则表达式,而不是一个字符串:

if(!/^[a-zA-Z0-9]+$/.test(name)){ ...

含义:

  • ^ -- 行首
  • [a-zA-Z0-9]+ -- 一个或多个字符/数字
  • $ -- 行尾

或者您可以搜索它的反义词,即“任何不接受的字符”:

if(/[^a-zA-Z0-9]/.test(name)){

关于javascript - 如何使用 JavaScript 只允许字母数字字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6256008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com