2

我正在尝试在模型上添加多个验证指令,但它不起作用。单独他们工作,但他们不工作。

我有 2 个输入指令来验证可以在其中输入的最小值和最大值。

<input type="text" min-val="2" max-val="5" ng-model="age" />

这是pluker链接

谢谢!

4

1 回答 1

3

差不多好了。

您将匿名函数传递给 $parsers 和 $formatters 数组:

modelCtrl.$formatters.push(function(value) {
  validator(value);
});

在匿名函数内部,您正在调用您的validator函数,但您没有返回结果。

要进行补救,请返回函数结果,如下所示:

modelCtrl.$formatters.push(function(value) {
  return validator(value);
});

modelCtrl.$parsers.push(function(value) {
  return validator(value);
});

为了简化您的代码,您可能希望直接使用函数名称作为变量引用(不需要匿名函数):

modelCtrl.$formatters.push(validator);
modelCtrl.$parsers.push(validator);

柱塞

于 2013-07-16T17:02:32.890 回答