【问题标题】:How to ensure that FileReader.onload() doesn't refresh the page如何确保 FileReader.onload() 不刷新页面
【发布时间】:2018-10-17 02:08:42
【问题描述】:

我正在尝试将表单与文件一起上传到谷歌驱动器,并且在使用 FileReader 上传文件时,文件正在上传,但页面被重定向到 json 成功页面,如下所示。

{"result":"success","data":"\"https://drive.google.com/file/d/1dFXWqvAPu68""} 

var reader = new FileReader();
var file = document.getElementById('attach').files[0];
reader.onload = function() {
        document.getElementById('fileContent').value = reader.result;
        document.getElementById('filename').value = file.name;
        document.getElementById('gform').submit();
        }
reader.readAsDataURL(file);

我不希望页面被重定向,当我尝试使用 XMLHttpRequest 将表单数据与文件一起发送时,文件正在上传,但它无效。 我该如何处理?

【问题讨论】:

    标签: javascript jquery google-drive-api xmlhttprequest


    【解决方案1】:
    reader.onload = function() {
    
      event.preventDefault()
      // your code here
    
    }
    

    https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault

    Event 接口的preventDefault() 方法告诉用户代理,如果事件没有得到显式处理,则不应像通常那样采取其默认操作。事件继续像往常一样传播,除非其中一个事件侦听器调用 stopPropagation()stopImmediatePropagation(),其中任何一个都会立即终止传播。

    【讨论】:

      猜你喜欢
      • 2020-09-07
      • 1970-01-01
      • 2014-07-21
      • 2012-03-25
      • 1970-01-01
      • 2011-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多