我想将除整数之外的所有字符条目限制在我在角度2应用程序中使用的文本框中,当用户开始输入其他字符时,它不应该显示在文本框中?
我尝试过keyUp事件,但似乎没有工作?
<input type="text" id="txtEmpID" [(ngModel)]="filters.empID" class="form-control"
(keyup)="onKey($event)">
onKey(event: any) {
var charCode = event.keyCode;
if (charCode > 95 && charCode < 106 ) { {
console.log(charCode);
return false;
}
}
我无法使用<input type="number" >
,因为应用程序使用的IE9和旧浏览器不支持这些新的HTML 5标准。 我知道IE糟透了
答案 0 :(得分:0)
在查看了所有人发布的评论之后,我想出了一种方法。
<input type="text" id="txtEmpID" [(ngModel)]="filters.empID" class="form-control" onkeypress="return event.charCode >= 48 && event.charCode <= 57">
执行相同操作的其他方法是使用输入(keyup)="onKey($event)"
事件并在那里写入逻辑但是有一个捕获
if (isNaN(event.target.value)) {
event.target.value = event.target.value.replace(/[^0-9]/g, '');
console.log(event.target.value);
}
此代码将完成这项工作,当用户在文本框中输入除数字以外的任何内容时,它将从文本框中清除这些值但是当您尝试在javascript中检索过滤器框值时,它将显示使用{{替换的旧值1}}(整数以外的字符)。我不确定它是否特定于angular 2或我使用的其他第三方java脚本库。