javascript - 如何在激活提交按钮之前使用 javascript 正则表达式来匹配字符串

标签 javascript regex angularjs

我有一个带有文本输入的 Angular 形式,需要输入一个字符串,就像这样:c、d、e、g、a、f 等......

但是,一旦输入的一部分匹配,提交按钮就会激活,即使我输入数字或大写字母,用户也可以提交表单。我想禁用它并且不让用户单击提交,除非它完全匹配而不是只找到一个匹配项并激活按钮。我希望正则表达式只允许匹配上述 6 个之一的小写字母,并用逗号分隔。

输入文本域:

<input type="text" name="input" ng-model="keysToPlay.text" ng-pattern="format"   required ng-trim="false" class="form-control" placeholder="c, d, e, etc...">

我的正则表达式是:

$scope.format = /^[cdefgab]{1}(, [cdefgab]{1})*/;

最佳答案

试试这个,看看它是否正常工作:
placeholder="((?:[ac-g], ?)+[ac-g])"
如果不让我知道,我会看看是否可以修复它

关于javascript - 如何在激活提交按钮之前使用 javascript 正则表达式来匹配字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31933023/

相关文章:

css - 从选择器中获取 id 的正则表达式?

angularjs - Select 元素的奇怪行为取决于 DOM 顺序

jquery - Angular 应用程序中的服务注入(inject)错误

javascript - 如何停止在同一对象上触发 'tap' 事件

javascript - jquery on() 用于多元素和多函数

javascript - 从按钮列表中删除某些文本值

javascript - 如何使用 Angular 或 JavaScript 连接两个具有相同 id 的数组

javascript - 将日期转换为天数然后做一些事情

java - 正则表达式 - 检测特定 URL 并替换该字符串

java - 我需要一个根据变量匹配数字的正则表达式