【问题标题】:How to validate input field (username) to not allow whitespaces in yii2如何验证输入字段(用户名)以不允许 yii2 中的空格
【发布时间】:2020-01-19 02:56:26
【问题描述】:

我在表单中有一个用户名字段,我想通过不允许空格来验证它,因为它不应该接受像“abc xyz”这样的用户名。

【问题讨论】:

  • 使用pattern 并指定允许字符的正则表达式。

标签: php validation yii2


【解决方案1】:

在你的Model 规则中使用类似:

['username', 'match', 'pattern' => '/^[a-zA-Z0-9]*$/i']

【讨论】:

  • 是的,我可以理解这个正则表达式,但是在 * '$/i' 之后我没有得到
  • @SamiUllahShah Read Explanation on Right
  • 既然已经在模式中包含了大写字母,为什么还要使用 i 标志?
【解决方案2】:

使用这样的东西:

<input type="text" name="username" pattern="[a-zA-Z0-9]{2,50}" title="Letters numbers">

https://www.w3schools.com/tags/att_input_pattern.asp

或者在javascript中使用事件

 <input type="text" name="username" onkeydown="myFunction()"> 

https://www.w3schools.com/jsref/event_onkeydown.asp

【讨论】:

  • 使用客户端验证很好,对最终用户来说很方便。但是仅使用客户端验证是不够的。您应该始终将其与服务器端验证结合使用,因为客户端验证可以被修改/规避。
猜你喜欢
  • 2016-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多