我正在检查从键盘接收值的输入,该值不能超过60。一切都很好,但当一个'ArrowUP‘被按到6-9和键盘仍然可以按。我不知道我做错了什么,请帮帮忙!
组件
controlValue(event) {
let patt = /[0-9]/g;
let itTrue = patt.test(event.key);
console.log(this.startTime.minute)
if (itTrue || event.keyCode == 8 || (event.keyCode > 33 && event.keyCode < 48)) {
if (event.code == 'ArrowUp') {
this.startTime.minute++
if (this.startTime.minute >= 60) {
this.startTime.minute = 0;
}
} else if (event.code == 'ArrowDown') {
this.startTime.minute--
if (this.startTime.minute < 0) {
this.startTime.minute = 59;
}
} else if (itTrue) {
if ((this.startTime.minute + parseInt(event.key)) < 60) {
console.log('return 1')
return true
}
console.log('return 2')
return false;
} else {
console.log('return 3')
return true;
}
} else {
console.log('return 4')
return false;
}}
HTML
<input placeholder="MM" (keypress)="controlValue($event)" maxlength="2" [(ngModel)]="startTime.minute" class="form-control">发布于 2018-09-04 03:33:26
https://stackoverflow.com/questions/52158207
复制相似问题