如何验证仅通过 JavaScript 正则表达式输入的字母和空格

新手上路,请多包涵

我的 HTML 代码中有一个 input type="text" 名称。我需要确保它是一个仅包含从“a”到“z”和“A”到“Z”的字母以及空格的字符串。

这是我的 HTML 代码:

 <form action="" name="f" onsubmit="return f1()">
                Name : <input type="text" name="name">

我希望我的 JavaScript 是这样的:

 function f1()
{
   var x=document.f.name.value;
   .....
   .....
   return false;
}

PS:我不太熟悉正则表达式,所以请对代码进行解释。

原文由 Zoran777 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 283
2 个回答

您可以使用 javascript test() 方法来验证名称字段。 test() 方法测试字符串中的匹配项。

 /^[A-Za-z\s]+$/.test(x) //returns true if matched, vaidates for a-z and A-Z and white space

要么

/^[A-Za-z ]+$/.test(x)

原文由 Konsole 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果你正在为现代浏览器构建一些东西,HTML5 中有一些非常令人愉快的东西:

 <input id="username" name="name" type="text" pattern="[a-zA-Z]{5,}" title="Minimum 5 letters" required />

参考: HTML5 表单输入类型

更新 2017/01/17:

如今,旧浏览器在市场份额上相当薄弱。这是使用 HTML5 功能而不是兼容性脚本的好习惯。

原文由 Frederik.L 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题