1
我想輸入24小時時間格式,使用'angular2-input-mask'.following我試圖掩碼。什麼將是有效的24小時時間格式的正確掩碼。'angular2-input-mask'的24小時正則表達式是什麼?
this.mask = [/[0-2]/, /^([0-9]|2[0-3])/, ':', /[0-5]/, /[0-9]/];
我想輸入24小時時間格式,使用'angular2-input-mask'.following我試圖掩碼。什麼將是有效的24小時時間格式的正確掩碼。'angular2-input-mask'的24小時正則表達式是什麼?
this.mask = [/[0-2]/, /^([0-9]|2[0-3])/, ':', /[0-5]/, /[0-9]/];
這是申請時的掩模angular2輸入掩碼的正確方法
HTML:
<input type="text" (keyup)="setTime($event)" [(value)]="timeStr" [textMask]="getMask()" />
打字稿:
設置關鍵時間
setTime(e):void{
this.time = e.target.value;
}
定義相對於this.time
getMask():{
mask: Array<string | RegExp>;
keepCharPositions: boolean;
} {
return {
mask: [/[0-2]/, this.time && parseInt(this.time[0]) > 1 ? /[0-3]/ : /\d/, ':', /[0-5]/, /\d/],
keepCharPositions: true
};
}
最後我解決我的問題這樣的面具。
HTML
<input [textMask]="{mask: mask}" [(ngModel)]="input_time" (ngModelChange)=changeRegex(input_time);type="text"/>
打字稿
寫在角2成分此以下代碼。
public mask: Array<string | RegExp> = [/[0-2]/,/\d/, ':', /[0-5]/, /\d/],
changeRegex(input_time){
if(input_time.charAt(0) == '2'){
this.mask[1]=new RegExp('[0-3]')
}else{
this.mask[1]=new RegExp('\d')
}
}