2017-12-21 5 views
0

사용자가 통화 값을 입력 할 곳이 있으므로 입력을 용이하게하기 위해 ng2-currency-mask를 사용하고 있습니다. 그러나이 입력은 읽기 전용이어야합니다. input 및 type을 클릭하면 값이 변경되기 때문에 readonly 속성을 추가해도 문제가 해결되지 않았습니다. 다음은 코드 스 니펫입니다.ng2-currency-mask <input readonly> 속성이 작동하지 않습니다.

<div class="ui-g-12 ui-md-6 ui-fluid"> 
    <label for="inputValor" id="labelValor">Valor unitário</label> 
    <input id="inputValor" name="inputValor" type="text" currencyMask pInputText required ng-focus="false" [options]="{allowNegative: false, decimal: ',', prefix: 'R$ ', thousands: '.'}" [readonly]="true" [(ngModel)]="alteracoes.produto.valor"> 
</div> 

누구든지이 문제를 해결하기위한 아이디어가 있습니까?

답변

0

읽기 전용 값을 제어 할 수있는 경우 다음과 같이 시도하십시오.

귀하의 입력 태그

그리고 당신의 TS에서

<input id="inputValor" name="inputValor" type="text" currencyMask pInputText required ng-focus="false" [options]="{allowNegative: false, decimal: ',', prefix: 'R$ ', thousands: '.'}" [readonly]="readOnly" (keydown)="onKeyDown($event)" [(ngModel)]="alteracoes.produto.valor"> 
:

public readOnly: boolean; 

onKeyDown(event: any): void { 
if (this.readOnly) { 
    event.preventDefault(); 
} 
}