【问题标题】:Ionic input format离子输入格式
【发布时间】:2015-10-23 00:13:51
【问题描述】:

我正在使用 Ionic 开发一个应用程序,并使用输入表单字段进行计算。

<input type="number" ng-model="data" step="0.01"> 

但是,如果我使用值 100.10 更新数据,输入框会显示 100.1

我想格式化输入字段中的值,使其始终显示 2 位小数 (100.10)。

我尝试过使用过滤器,但它们仅在我将输入更改为“文本”时才有效。我想使用 type="number" 因为它只显示数字键盘。

我也试过了:

parseFloat(""+data.toFixed(2)) 

但这也显示 100.1

【问题讨论】:

    标签: angularjs cordova ionic-framework ionic


    【解决方案1】:

    由于您使用的是 Ionic,因此您可以使用 Angular。在 Angular 中,您可以像这样简单地做到这一点:

    {{ number_expression | number : fractionSize}}
    

    所以,如果你有一个变量data,你会这样做:

    {{data | number : 2}}
    

    更多信息在official docs

    【讨论】:

    • 这不起作用。这适用于标签和普通文本。我希望实际输入字段中的文本显示 100.10
    • 你用的是什么浏览器?
    • 还有 - 一个 plunker 或 CodePen 与确切的例子会帮助我们帮助你。
    【解决方案2】:

    这是因为输入的类型是number。如果你把它改成text就可以解决问题了。

    或者只是从data.toFixed(2) 中删除parseFloat。这样,它将作为文本进入表单,尾随 0。

    【讨论】:

    • '我曾尝试使用过滤器,但它们仅在我将输入更改为“文本”时才有效。我想使用 type="number" 因为它只显示数字键盘。'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-18
    • 2016-12-27
    • 1970-01-01
    • 2018-03-24
    • 1970-01-01
    • 2016-03-09
    相关资源
    最近更新 更多