Firefox 15&上图:删除文件时输入type = file不会触发更改事件

时间:2012-08-31 06:52:38

标签: firefox drag-and-drop onchange input-type-file

将文件从磁盘拖放到输入框时,“change”事件不会因输入type ='file'元素而被触发。相同的代码适用于其他主流浏览器,但在Firefox 15及更高版本中不起作用。

    $("input[type='file']").change(
        function(){
            // Do form submit
        }
    );

实现相同目标的黑客方法是使用setTimeout和HTML5'drop'事件。

    $("input[type='file']").on('drop',function(event){
        this.files = event.originalEvent.dataTransfer.files;
        setTimeout(function(){
            //  Do form submit
        }, 0);  // Note that the timeout is 0ms
    });

不确定这是否是最佳方式...

PS:不使用setTimeout(..)并直接提交表单在FF 15+中不起作用

1 个答案:

答案 0 :(得分:0)