【问题标题】:How to restrict mat-form-field (matInput) user enter only characters and special characters not number?如何限制 mat-form-field (matInput) 用户只输入字符和特殊字符而不是数字?
【发布时间】:2019-08-19 02:01:31
【问题描述】:

Input Field我有一个 matInput 字段,我想限制输入仅输入字符和特殊字符,而不是数字。我申请
模式,错误消息也出现“请仅输入字符”之后,当我单击提交按钮时,表单已提交,我想在表单控件出现错误时停止表单提交。

【问题讨论】:

  • 向我们展示您迄今为止尝试过的代码,以及您遇到的错误。
  • 我没有收到任何错误,我的表单提交成功,当我们输入用户名作为数字 1111 时它也提交了,我想停止输入这个数字,提交的表单只有用户名是字符。
  • 向我们展示您的代码。编辑您的原始问题并将其包含在您的代码中。这样人们就可以了解您要做什么并找出不正确的地方。
  • 将代码作为文本放在原始问题中是一种常见的做法;不作为图像。如果您正在寻求帮助,请让其他人尽可能轻松地帮助您。请记住,这个社区是由志愿者促成的。这里有一些关于如何提问的指南:stackoverflow.com/help/how-to-ask ...关注它们有助于您获得更好的答案。

标签: html angularjs typescript


【解决方案1】:

您可以使用“模式”属性,您可以在其中放置您的正则表达式以匹配有效输入

或者您可以创建自定义指令并检测输入,并且通过将输入与正则表达式匹配来不允许输入数字

参考:https://angular.io/api/forms/PatternValidator

要使用的正则表达式:^([^0-9]*)$

测试正则表达式:https://www.regexpal.com/

【讨论】:

  • 好的,应用上述解决方案后不起作用的原因是什么?
  • 是的,但是我给出的解决方案有什么问题,你说它不起作用。那么有什么错误还是什么?分享截图或代码。
  • 您应该将 [disabled]="formname.invalid" 放在您的提交按钮中,这样它就不允许您提交表单。
  • 所有字段输入正确后,提交按钮不启用,禁用。
  • 填写所有字段后显示您的 console.log(this.formaname) 结果
猜你喜欢
  • 2012-04-24
  • 2019-12-15
  • 2018-10-30
  • 2023-03-09
  • 1970-01-01
  • 2020-08-07
  • 1970-01-01
  • 2019-08-14
  • 2021-07-03
相关资源
最近更新 更多