【发布时间】:2018-02-01 16:19:43
【问题描述】:
我有一个指令,我将其放入类型类的输入中。 我添加了模糊、焦点事件以了解何时进入和退出输入以产生标签的效果(材料设计),但是当我通过角度 ng-model 包装值时,我需要知道该字段已被填充。
有什么想法吗?
app.directive('formControl', function() {
return {
restrict: 'C',
link: function (scope, element, attrs) {
// Add class filled to form-control's that have a value
if(element.val()){
element.parent().addClass('filled');
}
// Any event here that can tell me that the value was changed by the angular so I can put the css class
element.bind('blur', function (e) {
input = angular.element(e.currentTarget);
if(input.val()){
input.parent().addClass('filled');
} else {
input.parent().removeClass('filled');
}
input.parent().removeClass('active');
}).bind('focus', function (e) {
input = angular.element(e.currentTarget);
input.parent().addClass('active');
});
}
};
});
【问题讨论】:
-
正如您所建议的,您可以在输入更新时触发一个事件。
-
是的,或者当被 ng-model 更新时我知道这发生了能够添加 css。
标签: javascript jquery angularjs