IE11如何上传不再存在的文件

时间:2015-02-25 17:28:34

标签: internet-explorer file-upload

我有一个文件上传表单。 选择上传文件后,我会通过窗口浏览器删除所选文件(或重命名),然后提交表单。

使用Chrome,Firefox和IE8,服务器会收到一个空白文件(filesize = 0)。但是使用IE11,文件上传成功。

我无法理解为什么IE11可以上传不再存在的文件?


我在这里写了一个脚本检查输入文件:http://jsfiddle.net/Teddy_Heaven/U5tjR/8/

[html]
<input type="file" id="test" />
<input type="button" onclick="checkFile()" value="Submit" />

[script]
function checkFile() {
    var el = document.getElementById("test");
    try {
    if(typeof el.files[0] !== 'undefined' && el.files[0].size > 0)
        alert("Success!");
    else
        alert("No file found!");
    } catch (err) {
        if (err.name == "NS_ERROR_FILE_NOT_FOUND") {
            alert("file no longer exists");
        }
    }
};

只需选择一个文件,重命名文件,然后点击提交即可 使用chrome:找不到文件!
使用Firefox:文件不再存在
随着IE11:成功!

1 个答案:

答案 0 :(得分:0)

我有同样的问题,当我看到你的问题时,我明白了。我们可以使用其他方式来获得结果,例如:

[script]
    function checkFile() {
        var el = document.getElementById("test");
        try {
        if(typeof el.files[0] !== 'undefined' && el.files[0].size > 0)
            alert("Success!");
        else
            alert("No file found!");
        } catch (err) {
                alert("No file found!");//in IE11, if file not exists, it will catch a error!
            }
        }
    };

我来自中国,英语不好,希望你能理解我的答案,希望答案对你有帮助^ _ ^