我正在使用包含Ionic的Angular.Js。我有一个 输入字段,类型为TEXT,其中包含maxlength 16位数。
现在我想显示字段值的最后4位数字 数字应该被掩盖。
所以任何人都可以建议我采取任何方法来实现。
答案 0 :(得分:1)
为了帮助您入门:首先将Textarea的值绑定到范围变量并为ng-change添加一个函数:
<textarea ng-model="model.myText" ng-change="maskValue()"></textarea>
然后在您的控制器中执行以下操作:
$scope.maskValue = function(){
$scope.model.myText = "xxxxxxxxxxxxxxxx" + $scope.model.myText.substring(16, 20)
}
maskValue()
每次Textarea的内容发生变化时都会调用。这肯定不会“按原样”运作,但它应该显示正确的方向。
答案 1 :(得分:0)
使用自定义指令过滤更改事件的输入。
.directive("test", function() {
return {
require: "?ngModel",
scope: {
ngModel: '='
},
link: function(scope, elem, attrs, ngModel) {
elem.bind('change', function() {
console.log(ngModel);
ngModel.$setViewValue(scope.ngModel.substring(scope.ngModel.length - 4, scope.ngModel.length));
ngModel.$render();
});
},
replace: true
}
});
使用范围不是一个好主意。它不提供可重复使用的模块模式,也存在性能问题。