在AngularJS中使用欧元符号格式化输入

Format input with euro sign on AngularJS

本文关键字:符号 格式化 输入 AngularJS      更新时间:2023-09-26

使用AngularJS,我有一个HTML表单的输入:

<input id="amount" type="number" ng-model="amount">
  • 我希望用户输入如下内容:12.3
  • 但是我想要这样的输入:12.30€
  • 我想要实时的或者模糊的。
  • 我还想保持在这个输入上轻松执行算术的可能性:

    <!-- multiply by VAT -->
    total: {{ amount * 1.015 }}
    

我已经看过了:

    如何在angular.js中做双向过滤?(过滤作用域的内容,而不是输入的内容,这与我想要的完全相反)
  • https://docs.angularjs.org/api/ng/filter/currency(不过滤输入,只过滤输出)

如果需要,这里是一个空的jsfiddle: http://jsfiddle.net/6V7c2/

只要从angular指令中扩展Doug R的解决方案,封装ng-change的延迟,你就可以使用基于指令的解决方案。

因此,在输入元素发生变化之后,所需的操作在可配置的延迟量之后发生。

您可以在http://jsfiddle.net/Lrt7e/1/

中看到相同的内容
<input ng-model="vars.value" ng-change="updateValue(vars.value)" ng-delay="1000" />