微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – Angularjs货币格式在输入框与ng模型:如何获取每个输入$格式化程序

搜索到处都是这个.每个堆栈溢出有一个答案,它实际上没有工作.与任何示例或谷歌组的例子相同,包括文档的角度.

看起来很简单我想要一个函数调用用户按下的每个键的输入.

简单的输入与ng模型

<input class="form-control" ng-model="model.thisisnotfun" formatter type="text" required>

根据我读过的一切$formatters应该将模型中的值更新为调用$formatters数组中的任何函数的视图.当我在输入框中输入时,它们永远不会被调用.

.directive('formatter',function ($filter,$parse) {
    return {
        require: 'ngModel',link: function (scope,element,attrs,ngModel) {

            ngModel.$formatters.push(
                function (value) {
                    console.log('this only gets called on page load');
                }
            );
        }
    };
})

我知道有很多自定义方法来做到这一点,我已经做了.我不需要一个工作,我只想知道如何正确地使用$formatters来“格式化”视图数据.

非常非常简单的jsfiddle http://jsfiddle.net/fh7sB/4/

感谢任何帮助.

解决方法

当模型更新时,$格式化程序将被调用,以格式化要显示用户的值. $解析器相反,即将值从视图字符串转换为真实模型,例如,一个号码.

在这里分叉的小提琴:http://jsfiddle.net/9tuCz/按按钮;它会改变模型并再次触发$formatters.

原文地址:https://www.jb51.cc/js/155617.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐