Javascript 获取typescript中的输入值
我有2个输入值,我需要对第一个Javascript 获取typescript中的输入值,javascript,angular,typescript,Javascript,Angular,Typescript,我有2个输入值,我需要对第一个input值(即信用卡号输入)进行验证,在ts文件上获取input值并在API上检查验证,而用户仍然在第二个input,我的第一个输入值示例:4444,因此我需要使用subString()要在进行验证之前获得前6个数字, 这就是我曾经尝试过的 html文件 <div> <input (keypress)="numberOnly($event)" class="input" type="text"
input
值(即信用卡号输入)进行验证,在ts文件上获取input
值并在API上检查验证,而用户仍然在第二个input
,我的第一个输入值示例:4444
,因此我需要使用subString()
要在进行验证之前获得前6个数字,
这就是我曾经尝试过的
html文件
<div>
<input
(keypress)="numberOnly($event)"
class="input"
type="text"
(keyup)="onKey($event)"
[(ngModel)]="creditCardNo"
/>
</div>
<div>
<input
class="input"
type="text"
[(ngModel)]="cardHolderName"
/>
</div>
onKey(event) {
this.creditCardNo = event.target.value;
const test = this.creditCardNo
.replace(/\s/g, '')
.toString()
.substr(0, 6);
this.paymentService.getCreditCardDetail('JPJSMN', test).subscribe(res => {
if (!res) {
return;
}
console.log(res);
});
}
使用
(keyup)=“onKey($event)”
获取值更改,并根据得到的响应对ts文件进行验证,但是我注意到,如果我使用(keyup)=“onKey($event)”
,它不会检测复制和粘贴,并且会不断请求API,是否有更好的实践来解决这个问题 您可以选择创建自定义的“仅数字化”角度指令
有关如何执行此操作的详细指南,请参见:
教程中显示的指令解决了复制和粘贴等问题。如果您只想在用户通过与编辑值相同的方式传递内容时更新模型,则可以使用
(ngModelChange)="pasteEvent($event)"
<div>
<input
(keypress)="numberOnly($event)"
class="input"
type="text"
(ngModelChange)="pasteEventcreditCardNo(creditCardNo)"
[(ngModel)]="creditCardNo"
/>
</div>
<div>
<input
class="input"
type="text"
(ngModelChange)="pasteEventcardHolderName(cardHolderName)"
[(ngModel)]="cardHolderName"
/>
</div>
(ngModelChange)=“粘贴事件($event)”
是否有任何链接可以让我阅读更多关于此的信息?它将如何在ts文件中?我正在更新答案,请检查。