入力フィールドを再利用したいが、(例えば、選択された値が "モバイル"の場合は適用された携帯電話のマスク、電子メールの場合はマスク、電子メールのマスクが適用されている場合は、pドロップダウン選択ボックスから選択された値)。私はコードbeloveでこれを実現しようとしていますが、それは動作していません。
<p-inputMask formControlName="communicationType" mask="{{communicationTypeMask}}"></p-inputMask>
これが可能であれば、アイデアやマスクの変更を認識するために呼び出すイベントはありますか?
回答:
回答№1は1あなたは使うことができます onChange
からのイベント p-dropdown
のマスクを更新する p-inputMask
.
<p-dropdown [options]="communications" [(ngModel)]="communication" (onChange)="changeMask()"></p-dropdown>
そしてここにTSコードがあります:
changeMask() {
if(this.communication==="mobile") {
this.communicationTypeMask = "99 99 99 99 99";
} else if(this.communication==="mail") {
this.communicationTypeMask = "**********@*****.**";
} else {
this.communicationTypeMask = "";
}
}
(私が書いたマスクについては気にしない、彼らは間違っているがそれはポイントではない)
見る プランカ
回答№2の場合は1
あなたは使うことができます onChange
からのイベント p-dropdown
のマスクを更新する p-inputMask
.
<p-dropdown [options]="communications" [(ngModel)]="communication" (onChange)="changeMask()"></p-dropdown>
そしてここにTSコードがあります:
changeMask() {
if(this.communication==="mobile") {
this.communicationTypeMask = "99 99 99 99 99";
} else if(this.communication==="mail") {
this.communicationTypeMask = "**********@*****.**";
} else {
this.communicationTypeMask = "";
}
}
(私が書いたマスクについては気にしない、彼らは間違っているがそれはポイントではない)
見る プランカ