angular、ionic、文本框只允许输入数字或几位小数的数字
如果需求只是要求只允许输入数字,那么:
HTML5方案:
<input type="number" />
ionic组件方案:
<ion-input [(ngModel)]="input_value" type="number"></ion-input>
如果需求是可以输入小数,但最多N位,那么:
*.html:
<ion-input [(ngModel)]="input_value" type="text" (ionChange)="checkInput($event)"></ion-input>
*.ts
checkInput(event) { let input_value = event.target.value;//获取input的id var reg = /^\d+\.?(\d{1,4})?$/; //匹配正则 while (input_value !='' && !reg.test(input_value)) { input_value = this.checkStr(input_value) } this.input_value = input_value; event.target.value = input_value; } //检查是否符合金额格式:只能输入数字且最多保留小数 private checkStr(str) { if (str.split('.').length > 2) { str = str.substring(0,str.lastIndexOf('.')); }else{ str = str.substring(0, str.length - 1); } return str; }
喜欢的话,请点赞,转发、收藏、评论,谢谢!