我想以<input type="file">编程方式在标记上触发click事件.
只是调用click()似乎没有做任何事情,或者至少它没有弹出文件选择对话框.
我一直在尝试使用侦听器捕获事件并重定向事件,但是我无法像点击某个人那样实际执行事件.
我想使用标签来创建自定义文件输入:
input[type="file"] {
width: 0.1px;
height: 0.1px;
opacity: 0;
overflow: hidden;
position: absolute;
z-index: -1;
}
section {
padding: 30px;
border: 1px solid lightgray;
width: 200px;
margin: 100px;
}
label {
display: block;
}Run Code Online (Sandbox Code Playgroud)
<section>
<label for="test">
<input type="file" id="test">
<button>Click me</button>
</label>
</section>Run Code Online (Sandbox Code Playgroud)
但是,当我单击标签内的按钮时,它不会打开文件弹出窗口,只有当我单击标签外部时,它才起作用。我怎样才能做到这一点?