如何使用javascript停止文件上传事件

Ayy*_*lvi 4 html javascript javascript-events

我想,当我上传的文件超过5MB,或者如果我的文件扩展名是不要停止文件上传事件.jpg.png。我找到了一个代码,但是当我尝试上传无效的文件类型时,它只会提醒我上传了错误的文件,但它不会取消该事件。这是代码

<script>
function checkFile(fieldObj)
{
    var FileName  = fieldObj.value;
    var FileExt = FileName.substr(FileName.lastIndexOf('.')+1);
    var FileSize = fieldObj.files[0].size;
    var FileSizeMB = (FileSize/5485760).toFixed(2);

    if ( (FileExt != "png" && FileExt != "jpg") || FileSize>5485760)
    {
        var error = "File type : "+ FileExt+"\n\n";
        error += "Size: " + FileSizeMB + " MB \n\n";
        error += "Please make sure your file is in png or jpg format and less than 5 MB.\n\n";

        alert(error);
        return false;
    }
    return true;
}
</script>
Run Code Online (Sandbox Code Playgroud)

这是 html 代码

 <input type="file"onchange="checkFile(this)"name='sec_2_img'>
Run Code Online (Sandbox Code Playgroud)

Tre*_*vor 5

您需要清除“sec_2_img”的值。您可以通过添加fieldObj.value = "";afteralert(error)和 before 来做到这一点return false;。这将从中删除文件名sec_2_img并强制用户选择一个新的,同时仍然显示消息,以便用户知道该怎么做。