【问题标题】:Mask the field that returns number屏蔽返回数字的字段
【发布时间】:2020-02-14 00:28:55
【问题描述】:

我需要对输入(默认情况下具有“。”和“,”)和返回(在标签“p”内)应用掩码。本来不打算用jQuery的,所以需要另外的解决方案,对一些库做了一些研究,但是没有成功。

输入:

<div class="form-group">
   <label for="exampleInputEmail1">Valor Estimado</label>
   <input [(ngModel)]="ticket.valorestimado" type="number" class="form-control" id="value"
    aria-describedby="emailHelp" placeholder="Valor"/>
</div>

返回值:

<div>
   <p class="fz-13">R$ {{ j.valorestimado }}</p>
</div

【问题讨论】:

  • 你能举一些例子输入和输出
  • 输入:3000000 输出:30.000,00

标签: html css angular angular-material


【解决方案1】:

如果要将数字 30000 格式化为“30,000.00”,可以使用数字管道。

<div>
   <p class="fz-13">R$ {{ j.valorestimado | number:'1.2-2' }}</p>
</div>

编辑:

这将使用您应用的默认语言环境。有关详细信息,请参阅数字管道文档:https://angular.io/api/common/DecimalPipe

我为至少 1 个整数和 2 到 2 个(即正好 2 个)小数位数选择了格式 1.2-2

来自文档:

十进制表示选项,由以下格式的字符串指定:

{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}

【讨论】:

  • 在输出中,它起作用了,返回了 30.000,00,但是在输入中,还需要格式化字段 '99.999,99'
  • 只要它是一个纯数字,它应该可以工作。演示:stackblitz.com/edit/angular-2euwu7
猜你喜欢
  • 1970-01-01
  • 2021-11-14
  • 2018-05-26
  • 1970-01-01
  • 1970-01-01
  • 2015-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多