5

正如主题所说,我如何触发动作发生在一个

modelController.$parsers(...) 

没有用户输入......我能想到的唯一方法是将它们包装在一个函数中并调用它,但是有没有更好的方法来触发

**//pseudo
$(modelController).trigger('just got dirty');**

我需要这个的原因是触发输入字段在提交页面上验证自己。

4

2 回答 2

10

我找到了解决这个问题的方法 - 只需使用模型值调用解析器:

angular.forEach(ngModel.$parsers, function (parser) {
    parser(ngModel.$viewValue);
});

它是如此简单,它似乎是最正确的解决方案。

于 2014-09-09T12:04:41.593 回答
1

这个问题对我来说也是真实的......因为我正在解决这个问题:

var triggerParsers = function() {
    var val = ngModel.$viewValue; 
    ngModel.$setViewValue(null);
    ngModel.$setViewValue(val);
};
于 2014-08-20T12:19:11.067 回答