javascript - 如何检查输入事件的状态?
问题描述
在 javascript 中,可以通过以下方式为范围滑块制作事件侦听器
document.getElementById().on("input", () =>{event handler})
但是我似乎找不到该输入事件的相应布尔值,例如您可以使用复选框
document.getElementById().checked
它返回一个布尔值,告诉您该框是否被选中(选中)。
我在getelementbyname
滑块的节点链接中搜索过,没有找到输入事件状态的任何痕迹,除了inputmode
,也尝试过document.getElementById().input
和oninput
,但效果不佳。
要点是事件侦听器外部的 if 语句的条件,因为我有不同的值作为被调用函数的参数,当滑块移动(触发输入事件)时,不应调用默认值函数。按照检查事件状态的示例:if (document.getElementById('id').checked == true) {code} else {default function is called}
。是否也可以检查输入事件状态?
解决方案
如果我理解正确,您需要在触发事件时获取布尔值,在输入为空时获取 false,如果是这样,您可以这样做:
document.querySelector('class-or-ID').addEventListener('input', (event) => {
if (!event.target.value) {
// input is empty
} else {
// input has content
}
});
推荐阅读
- c++ - 使用 Stream Builder 查询字符串
- javascript - 无法使用 jQuery get 检索 json 数据
- php - 我用于比较日期的 PHP 脚本无法正常工作
- php - 为什么不能在 laravel 中工作 ajax 上传文件
- python - 在 Docker 容器中运行 python 脚本错误的时区
- haskell - Haskell 中的类型类和类型推断
- mysql - 如何对 MySQL 进行求和和分组?
- database - 我无法在视图中显示我获取的数据
- java - 为什么更改 -xmx VM 选项后仍然出现异常“java.lang.OutOfMemoryError: Java heap space”?
- sql - 登录前握手期间发生错误,由于防病毒?