繁体   English   中英

如何使用 Angular 自动格式化电话号码

[英]How to auto-format phone number using Angular

在 Angular 中,我将手机号码设置为 (888)8888-888 并写入 maxlength 为 13 和用于自动格式化模式以自动按下括号和破折号的按键事件,但在移动自动格式化中不起作用:它以 13 号码作为手机号码。

<ion-label stacked>MOBILE (OPTIONAL)</ion-label>
<ion-input name="mobile1" placeholder="(888)888-8888" maxlength="13" class="hoverBorder"
   (keypress)="checkMobileLength($event.target.value,'buyer')" type="text" formControlName="mobile1"
   [class.invalid]="!signupBuyer.controls.mobile1.valid && (signupBuyer.controls.mobile1.dirty || submitAttempt)">
</ion-input>

checkMobileLength(val, data) {
   if (data == 'buyer') {
      if (val.length == 3) {
         this.signupBuyer.controls.mobile1.setValue('(' + val + ')')
      } if (val.length == 8) {
         this.signupBuyer.controls.mobile1.setValue(val + '-')
      }
   } else if (data == 'agent') {
      if (val.length == 3) {
         this.signup1.controls.mobile1.setValue('(' + val + ')')
      } if (val.length == 8) {
         this.signup1.controls.mobile1.setValue(val + '-')
      }
   }
}

尝试使用 (ionChange) 而不是 (keypress)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM