我无法正确创建十进制数字

时间:2017-10-12 18:50:25

标签: ionic-framework ionic2 ionic3

我正在尝试创建一个输入,您可以在其中写入带小数的数字。 我不知道如何制作它以便用户无法插入两个点字符。

示例 我想阻止用户只使用一个点0.123445.5

编写0.123445

我尝试过像step="0.01"这样的离子输入属性,但我无法解决它。

编辑:(已解决)

而是使用数字,使用type="string"并创建一种方法来检查数字的点数。

在:

<ion-item">
  <ion-label stacked>CRP</ion-label>
  <ion-input type="number" step="0.01" [(ngModel)]="CRP" (ngModelChange)="checkRules();"
   onkeypress="return event.charCode >= 46 && event.charCode <= 57"> </ion-input>
</ion-item>

现在:

<ion-item">
  <ion-label stacked>CRP</ion-label>
  <ion-input type="text" [(ngModel)]="CRP" (ngModelChange)="checkCRPkDecimals();"
   onkeypress="return event.charCode >= 46 && event.charCode <= 57"> </ion-input>
</ion-item>


checkCRPkDecimals() {
  if (isNaN(parseFloat(this.CRP))) return;

  let str:Array<string> = this.CRP.split(".");
  if (str.length > 2) {
    this.CRP = "";
    return;
  } else {
    this.checkRules();
  }
}

0 个答案:

没有答案