【问题标题】:Is it possible to use ng-pattern with a variable是否可以将 ng-pattern 与变量一起使用
【发布时间】:2015-02-25 23:06:48
【问题描述】:

我不喜欢正则表达式,但我想知道是否可以将 ng-pattern 与变量一起使用

例如,

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

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

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

如果

$scope.validationCode = 1234123412351234

那么 ng 模式将是

ng-pattern="/^1234123412351234$/"

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

【问题讨论】:

标签: javascript regex angularjs


【解决方案1】:

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

来自 Angular 的 documentation 关于ng-pattern:

如果值与RegExp 模式表达式不匹配,则设置模式验证错误键。对于内联模式,预期值为 /regexp/,对于定义为范围表达式的模式,预期值为 regexp。

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

$scope.pattern = new RegExp(patternFromServer);

并使用它:

<input ng-model="foo" ng-pattern="pattern">

【讨论】:

    猜你喜欢
    • 2018-11-04
    • 2022-01-13
    • 2019-07-04
    • 1970-01-01
    • 2019-11-06
    • 1970-01-01
    • 1970-01-01
    • 2021-11-12
    • 2016-04-01
    相关资源
    最近更新 更多