5

当用户选择要上传的文件并单击“打开”时,有没有办法绑定事件,我想在用户单击打开时触发事件。

在此处输入图像描述

4

1 回答 1

6

在这种情况下,该change事件将被触发。

如果你有这个 HTML:

<input type="file" id="fileInput" />

然后使用这个 JS:

window.onload = function () {
    document.getElementById("fileInput").onchange = function () {
        // this.value
    };
};

(可以选择使用addEventListener/attachEvent而不是设置onclick属性)

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

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

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

注意:window.onload处理$(document).ready程序用于确保元素可用。当然,这个事件的发生可能比实际需要的晚得多,因为它们会等待页面上的所有元素都准备好(并且window.onload等待更长时间才能加载图像等内容)。一个选项是onchange在页面上的元素之后或在<body>.

于 2013-04-12T15:25:50.200 回答