angularjs – 当角度Js为零时,隐藏输入中的值

前端之家收集整理的这篇文章主要介绍了angularjs – 当角度Js为零时,隐藏输入中的值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个角对象item.add_value = 0绑定到

<input type="number" ng-model="item.add_value"   ng-change="sumUp(item)" min="0" max="10000000000" />

为了进行计算,我必须使用type =“number”而不是type =“text”

那我的问题是当值为0时如何隐藏输入的内容

解决方法

我刚刚遇到同样的问题,并找到了一种方法来修复/改进@dubadub的答案,所以我正在分享他的指令版本:

.directive('hideZero',function() {
    return {
        require: 'ngModel',restrict: 'A',link: function (scope,element,attrs,ngModel) {
            ngModel.$formatters.push(function (inputValue) {
                if (inputValue == 0) {
                    return '';
                }
                return inputValue;
            });
            ngModel.$parsers.push(function (inputValue) {
                if (inputValue == 0) {
                    ngModel.$setViewValue('');
                    ngModel.$render();
                }
                return inputValue;
            });
        }
    };
})

您只需在输入中添加hide-zero属性即可使用它.

猜你在找的Angularjs相关文章