如何在jquery中传递文件选择事件?

时间:2013-11-10 08:53:08

标签: javascript jquery html5

这是一个文件输入元素

<input type="file" id="url" name="url[]" multiple />

现在听取其变更事件的代码

document.getElementById('url').addEventListener('change', handleFileSelect, false);

功能

function handleFileSelect(evt) {
    var files = evt.target.files; // FileList object
}

这完全没问题。!!

但这不是

<input type="file" id="url" name="url[]" multiple onchange="handleFileSelect()" />

抛出错误“TypeError:evt is undefined”

如何为第二个传递事件?

2 个答案:

答案 0 :(得分:3)

您需要将event作为参数传递给handleFileSelect方法。

尝试

<input type="file" id="url" name="url[]" multiple onchange="handleFileSelect(event)" />

演示:Fiddle

答案 1 :(得分:0)

试试这个:

$(document).ready(function(){
    $("#url").change(function(){
        var th = $(this);
        //some action
    });
});