我有这个:
<input style="text-align: right;font-size: 12px;" class='input' (keyup.enter)="sumTotal($event)" type="text"
[ngModel]="field.value" (focusin)="focusin()" (focusout)="format()" (keyup.enter)="format()"
(ngModelChange)="onlyNumbers($event);field.value = $event;sumTotal($event);" [disabled]="disabled">
在我看来,我有这个: 我想要数字和特殊字符。
onlyNumbers(letter) { if (letter.toUpperCase() !== letter.toLowerCase()) { return; } else { this.field.value = letter; } }
但是它仍然可以输入字母。有什么建议吗?
答案 0 :(得分:2)
使用event.preventDefault()
来检查isNaN
是否返回false
,以及是否返回.
或,
可能是您的解决方案:
function numbersonly(e){
if(isNaN(e.key) && e.key !== '.' && e.key !== ',') e.preventDefault();
}
<input type="text" onkeypress="numbersonly(event)" />
答案 1 :(得分:0)
您可以尝试这种方式
onkeypress="return (event.charCode == 8 && event.charCode == 0) ? null : event.charCode >= 48 && event.charCode <= 57"
其他方式设置模式
pattern="[0-9]"