Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jqueryajax失败了_Javascript_Jquery - Fatal编程技术网

Javascript jqueryajax失败了

Javascript jqueryajax失败了,javascript,jquery,Javascript,Jquery,我似乎无法理解这个Ajax查询失败的原因,打开控制台并查看网络,我看到有一个200的响应,我的浏览器上的预览选项卡显示了我期望的数据,但在完整的回调中,我得到了带有的xhr对象,响应状态文本显示“error”。。。谁能给我一些启发和教育我 jQuery.ajax({ url:“https://www.fdic.gov/bank/individual/failed/banklist.csv", cache:false, 跨域:是的, xhr:function(){ var xhr=new XM

我似乎无法理解这个Ajax查询失败的原因,打开控制台并查看网络,我看到有一个200的响应,我的浏览器上的预览选项卡显示了我期望的数据,但在完整的回调中,我得到了带有的xhr对象,响应状态文本显示“error”。。。谁能给我一些启发和教育我


jQuery.ajax({
url:“https://www.fdic.gov/bank/individual/failed/banklist.csv",
cache:false,
跨域:是的,
xhr:function(){
var xhr=new XMLHttpRequest();
xhr.responseType='blob';
xhr.withCredentials=true;
返回xhr;
},
成功:功能(数据){
console.log(“成功”,数据)
$(“正文”)。追加(“成功”+数据);
},
完成:功能(数据){
console.log(“完成”,数据);
$(“body”).append(“complete”+data.statusText);
}
});

如果您的控制台显示正确的输出,而网络显示200 ok,那么您至少知道它在返回时使用了正确的方法。那么,您返回的数据是什么?您可能需要在body.append中使用结构化html,而不仅仅是文本

我建议要么构建一个标签并将其放入append()方法,要么直接将标签放入html并引用它

以下是一些例子:

<label id="labelOutput"></label>
<script type="text/javascript>
    function outputData(data)
    {
        $('#labelOutput').html(data);
    }
</script>

你没有说你所看到的事情会导致你说它失败。另外,
done
不是ajax方法的选项(参考)。它是从
$.ajax()
方法返回的promise/deferred函数。如果它失败,将使用有助于解释原因的信息调用错误回调。但是您没有错误回调。我看到网络请求get响应代码200,但返回完整的回调时,xhr响应带有“statusText”:“error”。当我运行脚本时,我在控制台中看到CORS错误。我看到网络请求get响应代码200,但返回完整的回调时,xhr响应带有“statusText”:“error”。您是否尝试过普通的$.get()或$.post()方法?这可能会限制错误原因的数量,因为它简化了调用。我想你需要完整的jquery.min.js来实现这一点。我需要将响应类型设置为blob,以防我得到的不是文本数据,一旦我得到响应,我将检查神奇的数字,看看它是riff/wav/zip还是什么,并适当地处理它
<label id="labelOutput"></label>
<script type="text/javascript>
    function outputData(data)
    {
        $(body).append($('<label>' + data + '</label>');
    }
</script>
jQuery.ajax({
        url:'https://images.unsplash.com/photo-1465101108990-e5eac17cf76d?ixlib=rb-0.3.5&q=85&fm=jpg&crop=entropy&cs=srgb&ixid=eyJhcHBfaWQiOjE0NTg5fQ%3D%3D&s=471ae675a6140db97fea32b55781479e',
        cache:false,
        xhrFields:{
            responseType: 'blob'
        },
        success: function(data){
            var img = document.getElementById('img');
            var url = window.URL || window.webkitURL;
            img.src = url.createObjectURL(data);
        },
        error:function(){

        }
    });