html input ng model,AngularJS input [placeholder]指令被ng-model破坏

小编典典

您的样本中仅有几处修改:

app.directive('placehold', function() {

return {

restrict: 'A',

require: 'ngModel',

link: function(scope, element, attr, ctrl) {

var value;

var placehold = function () {

element.val(attr.placehold)

};

var unplacehold = function () {

element.val('');

};

scope.$watch(attr.ngModel, function (val) {

value = val || '';

});

element.bind('focus', function () {

if(value == '') unplacehold();

});

element.bind('blur', function () {

if (element.val() == '') placehold();

});

ctrl.$formatters.unshift(function (val) {

if (!val) {

placehold();

value = '';

return attr.placehold;

}

return val;

});

}

};

});

不确定它是否是最佳解决方案,无论如何都可以。即使键入相同的文本,也就是占位符属性中的文本,也会导致它检查模型的焦点值。

2020-07-04


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部