AngularJS-ng表单上的图案不适合某些特殊符号,如美元符号
我正在用AngularJS 1.5编写一个应用程序。我正在尝试编写一个功能,用户可以在应用程序中验证他们的密码,我正在使用ng消息尝试验证表单 我的发件人有两个字段:密码和确认密码。 这两个验证条件是:两个密码都是必需的,并且密码必须匹配 我遇到的问题是一些特殊字符的模式匹配失败。美元符号失败,但并非所有特殊字符都失败。我需要它为所有角色工作 这是我的JSFIDLE: 代码片段:AngularJS-ng表单上的图案不适合某些特殊符号,如美元符号,angularjs,forms,ng-messages,angularjs-ng-pattern,Angularjs,Forms,Ng Messages,Angularjs Ng Pattern,我正在用AngularJS 1.5编写一个应用程序。我正在尝试编写一个功能,用户可以在应用程序中验证他们的密码,我正在使用ng消息尝试验证表单 我的发件人有两个字段:密码和确认密码。 这两个验证条件是:两个密码都是必需的,并且密码必须匹配 我遇到的问题是一些特殊字符的模式匹配失败。美元符号失败,但并非所有特殊字符都失败。我需要它为所有角色工作 这是我的JSFIDLE: 代码片段: <div> <label class="item" ng-
<div>
<label
class="item"
ng-class="{ 'has-error' : vm.verifyPassword.password.$invalid && (vm.verifyPassword.$submitted || vm.verifyPassword.$dirty) }">
<span class="input-label">Password</span>
<input
id="password"
type="password"
name="password"
ng-model="vm.data.password"
placeholder="password"
required>
</label>
</div>
暗语
问题在于JSFIDLE中的这一行,您将vm.data.password(作为字符串)传递给ng模式
ng-pattern="vm.data.password"
根据ngPattern的参数文件部分:
必须计算为RegExp或可解析为RegExp或RegExp文本的字符串的AngularJS表达式
所以AngularJS将您的输入解析为正则表达式,这就是为什么一些符号失败的原因,例如$(美元符号),因为$是正则表达式中的保留关键字。我认为最干净的方法是为此创建您自己的验证器哦,我需要这些字符来工作,所以我能做什么?