javascript - 如何检查标签是否点击?
问题描述
我有一个这样的输入标签:
<input type="file" id="excel_file"
accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
style="color:transparent; "/>
和输出:
我想做的是检查Choose File
按钮是否被点击。我无法使用与普通按钮相同的方法进行检查,因为这choose file
不是按钮。有谁知道我如何检测用户是否点击它?
解决方案
如果您只想监听 click 事件,只需使用以下命令:
const inputElement = document.getElementById('excel_file');
inputElement.addEventListener('click', () => {
console.log('I was clicked');
}, false);
但是,如果您想监听文件选择的事件,那么您应该使用“更改”而不是“点击”。'change' 事件只会在选择文件时触发,以避免在用户单击按钮然后通过单击取消退出时触发您的功能。
有关详细信息: 使用来自 Web 应用程序的文件
推荐阅读
- javascript - 尽管存在 Access-Control-Allow-Origin 标头,但 Chrome 中的 CORS 问题
- sql - 如何查询包含数组 ["val1", "val2"] 的文本列并检索包含特定值的所有表
- model - 预加载模型资源时出错 com.google.mlkit.common.MlKitException
- django - 如何使用 Django ajax“GET 方法”
- fonts - 如何让 xmessage 使用字体?
- java - 有人可以告诉我如何编写和覆盖方法以找到最多 6 个百分比输入的几何平均值
- c# - 为什么我不能在我的 Web API 项目中使用带有 C# 异步函数的 Discard 作为触发后遗忘机制
- ada - 前置条件和后置条件是否取代了函数验证?
- c++ - 关于 QT Tcpserver 和 Thread
- mysql - 仅使用选定选项的 MySQL 搜索