Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 文件上载时的事件绑定_Javascript_Jquery_Html_File Upload - Fatal编程技术网

Javascript 文件上载时的事件绑定

Javascript 文件上载时的事件绑定,javascript,jquery,html,file-upload,Javascript,Jquery,Html,File Upload,当用户选择要上载的文件并单击“打开”时,是否有方法绑定事件?我想在用户单击“打开”时触发事件 在该场景中,将触发change事件 如果您有此HTML: <input type="file" id="fileInput" /> (可以选择使用addEventListener/attachEvent而不是设置onclick属性) 在处理程序内部,您可以使用this.value来选择文件 当然,使用jQuery,您可以使用: $(document).ready(function () {

当用户选择要上载的文件并单击“打开”时,是否有方法绑定事件?我想在用户单击“打开”时触发事件


在该场景中,将触发
change
事件

如果您有此HTML:

<input type="file" id="fileInput" />
(可以选择使用
addEventListener
/
attachEvent
而不是设置
onclick
属性)

在处理程序内部,您可以使用
this.value
来选择文件

当然,使用jQuery,您可以使用:

$(document).ready(function () {
    $("#fileInput").on("change", function () {
        // this.value OR $(this).val()
    });
});

注意:窗口。onload和
$(文档)。ready
处理程序用于确保元素可用。当然,这个事件可能发生得比实际需要的时间晚得多,因为它们等待页面上的所有元素准备就绪(并且
window.onload
等待图像之类的东西加载的时间更长)。一个选项是将
onchange
处理程序立即绑定到页面上的元素之后或

的结尾处。在这种情况下,字段的更改事件应该触发,并且可以复制。选中此选项如果脚本放在页面末尾/输入元素之后,则不需要
窗口的
onload
包装
=]
@Fabrício mattéTrue,但我不喜欢这样做,这基本上和在身体末端是一样的(window.onload与
稍有不同,但仍然如此)。我觉得这个问题并不重要。尽管如此,我还是会在答案中补充一点。谢谢:)
$(document).ready(function () {
    $("#fileInput").on("change", function () {
        // this.value OR $(this).val()
    });
});