javascript - 用户离开字段后验证表单字段
问题描述
我想在用户离开字段后验证表单字段。我写了我的html如下
<input type="text" onfocusout="validateIp()"formControlName="ip_address" (input)="onIpChange($event.target.value)" pattern="^[a-zA-Z0-9.]*$"class="form-control form-control-sm" id="IP_Address">
下面是我的打字稿代码
validateIp(){
console.log('validateIp is called');
}
onfocusout 没有按预期工作。下面是我得到的错误
Uncaught ReferenceError: validateIp is not defined
at HTMLInputElement.onfocusout
我也尝试过 onblur 但事件没有被触发
解决方案
使用 ReactiveForms 时,可以验证 onBlur
this.form=new FormGroup({
ip_address:new FormControl(null,{validators: Validators.required,
updateOn: 'blur'})
})
或使用 formBuilder
this.form = this.fb.group({
ip_address: ["", { validators: [Validators.required], updateOn: "blur" }],
});
推荐阅读
- android - 当我尝试在 Android 11 中使用 Capacitor 读取文件时出错
- ios - 本地推送通知在 iOS 上不起作用,使用 React Native
- node.js - 在 React(CRA) 中使用 .env 和 [Runtime] 中的 Typescript
- java - java:-source 15 中不支持记录
- asp.net - 如何将特定列单元格格式设置为从 GridView 生成的 excel 中的数字或文本?
- php - 需要微调
- javascript - dot dot dot spread operation在visual studio代码intellisense中不起作用
- android - 如何在 Jetpack Compose 中暂停 MediaPlayer
- django - 主路径时弹出 serviceworker.js
- c# - 串行端口等待程序 - 如果设备在 5 秒内没有响应,则取消 | 当标志不改变时