如何使用jQuery获取附件文件内容

前端之家收集整理的这篇文章主要介绍了如何使用jQuery获取附件文件内容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
获取响应时,我有内容处理:attachment; filename = f.csv,我需要在页面上下载此文件内容.
在$.ajax请求我有一个错误.
如何使用jQuery ajax(或get)获取文件内容
UPD
error: function( jqXHR,textStatus,errorThrown ) {
  console.log( jqXHR,errorThrown );
}

得到

Object {
    ...
    readyState 0
    responseText ""
    status 0
    statusText "error"
},error,

UPD 2
我找到了一个jquery.fileDownload插件,但它显示了浏览器窗口的保存或打开对话框,如下所示:

但我需要获取文件内容.
我不需要在电脑上下载文件.

UPD 3
完整代码清单:

$.ajax( {
    url: link,crossDomain: true,dataType: "text",success: function( data,jqXHR ) {
        alert( data );
    },error: function( jqXHR,errorThrown ) {
        console.log( jqXHR,errorThrown );
    }
} );

文件由另一个服务生成,我无法更改它.
UPD 4
首先,我试着从另一个域获取json数据,如下所示:

$.ajax( {
    url: link,async: true,cache: true,dataType: "jsonp",type: "GET",jsonp: "finance_charts_json_callback",jsonpCallback: "finance_charts_json_callback",errorThrown );
    },jqXHR ) {
        console.log( data );
    }
} );

链接看起来像http://chartapi.finance.yahoo.com/instrument/1.0/a/chartdata;type=quote;ys=2012;yz=2;ts=1234567890/json?finance_charts_json_callback=finance_charts_json_callback

它的响应标题

HTTP/1.1 200 OK
Date: Wed,30 Apr 2014 12:01:08 GMT
P3P: policyref="http://info.yahoo.com/w3c/p3p.xml",CP="CAO ... GOV"
Cache-Control: public
Expires: Thu,01 May 2014 00:32:18 GMT
Last-Modified: Wed,30 Apr 2014 00:32:18 GMT
Content-Type: text/javascript; charset=utf-8
Content-Encoding: gzip
Vary: Accept-Encoding,X-Ssl
Age: 0
Via: http/1.1 yts39.global.media.ir2.yahoo.com (...)
Server: ATS
Connection: keep-alive

一切正常.

当我尝试从另一台服务器获取文件时,它的响应标头:

HTTP/1.1 200 OK
Cache-Control: no-cache
Date: Wed,30 Apr 2014 12:09:01 GMT
Pragma: no-cache
Content-Type: text/csv
Expires: -1
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
content-disposition: attachment;filename=export.csv
Content-Encoding: gzip
Vary: Accept-Encoding

解决方法

编辑,更新

尝试

$(function() {
    $.getJSON("https://query.yahooapis.com/v1/public/yql?q=select"
              +"* from csv where url='http://finviz.com/export.ashx?'"        
              +"&format=json&diagnostics=true&callback=?",function (data,jqxhr) {
        $.each(data.query.results.row,function (index,value) {
            jqxhr.promise()
            .done(function () {
                    $("<li>",{
                      "text": value.col2 + " " + value.col8
                    })
                    .css("padding","8px")
                    .appendTo("ol");
            })
            .always(function () {
                if (index === 4999) {
                  console.log(data.query,data.query.diagnostics.warning,data.query.results.row.length,index,$("li").length);
                };
            });
        });
    });
});

jsfiddle @L_404_1@

原文链接:https://www.f2er.com/jquery/177256.html

猜你在找的jQuery相关文章