一尘不染

是否可以将ng-pattern与变量一起使用

angularjs

我对正则表达式很糟糕,但是我想知道是否可以将ng-pattern与变量一起使用

例如,

ng-pattern="/^{{validationCode}}$/"

其中validationCode是控制器中附加到$ scope的变量

// Inside Controller
$scope.validationCode = 'response returned from server'

如果

$scope.validationCode = 1234123412351234

则ng-pattern将是

ng-pattern="/^1234123412351234$/"

但这不起作用,似乎我需要创建一个我真的不想要的自定义指令


阅读 401

收藏
2020-07-04

共1个答案

一尘不染

ng-pattern 需要一个正则表达式。

从Angular的文档中有关ng- pattern

如果该值与RegExp模式表达式不匹配,则设置模式验证错误键。期望值/regexp/用于内联模式或regexp定义为作用域表达式的模式。

换句话说,您可以在控制器中创建一个RegExp:

$scope.pattern = new RegExp(patternFromServer);

并使用它:

<input ng-model="foo" ng-pattern="pattern">
2020-07-04