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

2023-12-29

一直在玩 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)){ ...

meaning:

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

或者您可以搜索相反的内容,即“任何不接受的字符”:

if(/[^a-zA-Z0-9]/.test(name)){
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 JavaScript 只允许字母数字字符 的相关文章

随机推荐

  • 删除 SQL Server 2010 中的“重复”行

    我在批量插入脚本中犯了一个错误 所以现在我有具有不同 colX 的 重复 行 我需要删除这些重复的行 但我不知道如何删除 更准确地说 我有这个 col1 col2 col3 colX 0 1 2 a 0 1 2 b 0 1 2 c 0 1
  • 隐式宏。默认隐式值。如何?

    我什至不知道如何问这个问题 我有一个宏可以创建一个实例IsEnum T 对于一个类型T 我正在对其进行测试 并希望确保对于未密封的类型或通常不满足枚举要求的类型找不到隐式类型 所以我创建了这个方法来测试 def enumOf T impli
  • 从系列中删除异常

    我在 Outlook 中有一个系列 但有一些例外 我想做的是删除本系列中的所有例外 有谁知道是否有办法做到这一点 由于例外列表是只读的 我尝试清除重复模式并重新应用例外列表之外的所有值 如下所示 Dim tRType As OlRecurr
  • NodeJS 是否尊重 Docker 虚拟化和资源限制?

    众所周知 某些应用程序不了解 Linux 内核隔离和虚拟化功能 例如 cgroup 这包括系统实用程序 例如top free and ps 还有 Java 等平台 我最近读过一篇文章 https very serio us 2017 12
  • 类型错误:运行 next.js 时,类扩展值未定义不是构造函数或 null

    在跑步的时候 npm run dev 我突然开始出现错误 几乎没有对项目代码进行任何更改 TypeError Class extends value undefined is not a constructor or null at Obj
  • 如何在 Go 中逐字符读取文件

    我有一些大的 json 文件想要解析 并且我想避免一次将所有数据加载到内存中 我想要一个函数 循环 它可以一次返回每个字符一个 I found 这个例子 http golangcookbook com chapters strings pr
  • 单元测试快速路由调用控制器方法?

    我看到一些类似的问题 https stackoverflow com questions 9517880 how does one unit test routes with express 但我的设置略有不同 我无法找出测试它的好方法 我
  • OS X 上的直接排序错误

    在 OS X 10 5 Emacs 23 2 上 在 dired 模式下 如果我尝试排序dired sort toggle or edit带前缀参数 sort extension or X 我得到 insert directory List
  • 如何在 cassandra cql 中对 2 个或更多表进行联接查询

    我是卡桑德拉的新手 这里我有两张桌子EVENTS and TOWER 我需要加入这些来进行一些查询 但我没有能力做到这一点 结构EVENTS table eid int PRIMARY KEY a end tow id text a hom
  • Android Studio Designer 显示小部件和片段的方式与我的手机不同

    我在 Android Studio 设计器和手机中显示项目时遇到问题 第一个问题是小部件和片段在设计器 模拟器中的显示与在我的手机上的显示不同 我尝试降低设计器中的分辨率来测试其他设备分辨率 但尽管分辨率相对相同 但它在我的手机上的显示效果
  • 德尔福 UUID 生成器

    Delphi 有内置的东西来生成 UUID 吗 program Guid APPTYPE CONSOLE uses SysUtils var Uid TGuid Result HResult begin Result CreateGuid
  • 如何从 Flash 中的 MovieClips 获取多边形?

    我有一个动作脚本 可以读取 swf 并浏览其中的影片剪辑 影片剪辑应该是简单的形状 我想将这些影片剪辑中的数据转换为多边形 换句话说 我想要一系列代表影片剪辑上的形状的坐标 没有简单的方法可以做到这一点 将形状绘制到舞台上后 您可以访问的唯
  • OSX/Linux,减慢终端的输出[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在打印一个长文本文件 该文件在屏幕上滚动得非常快 有没有办法减慢滚动速度 换句话说 是否有一个系统设置可以控制输出显示到屏幕上的速度 OSX Li
  • 如何解析方法声明?

    我正在尝试解析方法声明 基本上我需要获取接收者基本类型的语法节点 type hello 和返回类型 notype and error The ast包看起来很简单 但由于某种原因我没有得到我需要的数据 即字段报告为零 唯一有用的数据似乎仅在
  • OSX 上的 JavaFX 屏幕捕获无头异常

    我正在将旧的 java 应用程序从 swing 转换为 javafx 但遇到了问题 我使用以下代码来捕获屏幕截图 public ScreenCapper ge GraphicsEnvironment getLocalGraphicsEnvi
  • HtmlUnit 和片段标识

    我目前想知道如何处理片段标识 我想要从中获取信息的链接包含片段标识 看起来 HtmlUnit 正在丢弃我的 url 的 db4mj 因此加载原始 url 有谁知道处理片段身份的方法吗 如果需要 我可以发布示例代码来进一步解释 EDIT 由于
  • 在 Redux Thunk 中使用 getState 是一个好的实践吗?

    我在其他问题中看到了关于是否使用的相互矛盾的 或者对我来说只是令人困惑的 答案getState在一个动作中是可以接受的 也可以是不可以接受的 我已经好几次看到它被称为反模式 对我来说 它似乎工作得很好 但如果我们不使用的话 这样做的最佳实践
  • 如何在 Java AWT 和/或 Swing 中更改光标图像?

    I m making a simple graphics editor i e a paint program I am not planning on anything fancy but I do want my program to
  • Laravel 返回带有旧输入的页面进行验证

    对于更新个人资料页面 我使用路线作为 Route get editdriver data DriverController EditDriver 在我使用验证后的控制器中 return Redirect to editdriver data
  • 如何使用 JavaScript 只允许字母数字字符

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