【问题标题】:HTML5 <a> Download Attribute in Javascript not Handling Server ErrorHTML5 <a> Javascript 中的下载属性不处理服务器错误
【发布时间】:2017-01-09 22:26:12
【问题描述】:

我正在尝试以编程方式单击具有下载属性和 href 的 &lt;a&gt; 元素以从服务器下载文件。但是,如果下载出错,服务器将返回一个带有错误状态代码的 html 页面。由于 HTML5 下载属性,它会尝试强制下载此 html 页面或下载服务器错误文件。有没有办法让我在新选项卡中打开 html 错误文件而不是下载?我已经将目标属性设置为 _blank。

【问题讨论】:

  • 到目前为止您尝试过什么?你的代码?

标签: javascript jquery node.js html


【解决方案1】:

您可以使用XMLHttpRequestfetch请求文件,如果没有发生错误,则设置&lt;a&gt;元素hrefdownload属性,否则将用户重定向到显示错误响应的文档。

【讨论】:

    【解决方案2】:

    您可以创建新元素,例如按钮并使用带有 jquery ajax 请求的 clickevent 来检查服务器是否可用。

    $.ajax({
        url: "/url/to/file",
        type: "GET",
        success: //handle succes -> download file,
        error: //handle error
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      • 2016-02-12
      • 2020-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多