我想用同样的规则更改正则表达式模式。示例在Plunker 中
若选择了具有正则表达式的类型,那个么若值有效,则更新模型。但若选择了并没有正则表达式的类型(例如,我的代码中的"string"),那个么模型就永远不会更新。无所谓,如果函数返回null或空字符串。
我的问题是,如果存在这种方式,如何关闭这种验证?
当您想要允许任何输入时,可以返回.*
:
$scope.getValidatorRegex = function () {
switch ($scope.type) {
case 'int':
return /^d+$/;
default:
return /.*/;
}
};
您需要将字段封装在<form>
标记中,以启动angulars内置验证。参见FormController
当您这样做时,int
验证将起作用,但由于数字也可以是字符串,因此您的字符串验证将不起作用。