当前位置: 首页 > 面试题库 >

jQuery ajax错误{“ readyState”:0,“ responseText”:“”,“ status”:0,“ statusText”:“ error”}

何雅惠
2023-03-14
问题内容

我正在尝试提出ajax请求

$.ajax({
  type: "post",
  url: "download.php",
  error: function(data, status, err){
           alert(JSON.stringify(data));
         },
  data: "fileid="+fileid
});

该请求将警报“ {“ readyState”:0,“ responseText”:“”,“状态”:0,“ statusText”:“错误”}“

我在Google上搜索了所有我想出的是跨站点Ajax调用(这显然不是)

我已经尝试将完整的url放进去,并且做同样的事情。

我唯一能想到的就是标题,我不知道它到底有什么问题。这是firebug的请求标头

Host                www.mydomain.com
User-Agent          Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept              */*
Accept-Language     en-us,en;q=0.5
Accept-Encoding     gzip, deflate
Accept-Charset      ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection          keep-alive
Content-Type        application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With    XMLHttpRequest
Referer             http://www.mydomain.com/
Content-Length      8
Cookie              PHPSESSID=27b7d3890b82345a4fc9604808acd928

我在另一个页面上添加了另一个请求,它工作正常,但是这个请求不断失败,另一个请求的标头是:

Host                www.mydomain.com
User-Agent          Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept              text/plain, */*; q=0.01
Accept-Language     en-us,en;q=0.5
Accept-Encoding     gzip, deflate
Accept-Charset      ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection          keep-alive
Content-Type        application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With    XMLHttpRequest
Referer             http://www.mydomain.com/differentpage.php
Content-Length      33
Cookie              PHPSESSID=27b7d3890b82345a4fc9604808acd928

问题答案:

我遇到了同样的问题:每次用户单击链接时如何注册。

实际上,问题在于,如果不停止弹出窗口,则ajax请求不会完成,并且您会得到readyState:0!

我已经完成了上述操作的另一个版本,该版本可能更易读(即使更冗长)

/*  --------------------------------------------------------------------------
 *  Before that add 'downloads' class to every anchor tag (link) in your page
 *  This script does the rest
 *  
 *  remember to change 'your_php_file' with the one you use
 *  -------------------------------------------------------------------------- */

$(document).ready( function()
{

    // Check if there is any link with class 'downloads'
    if ( typeof $('.downloads') != 'undefined' )
    {
        var links = $('.downloads');

        // Run this for every download link
        for ( var i = 0; i < links.length; i++ )
        {   
            // Set click behaviour
            links[i].onclick = function(e)
            {
                // Get download name
                var attr = this.attributes,
                    href = attr.href.textContent,
                    elem = href.split('/'),
                    elem = elem[elem.length - 1];

                // Send the download file name and only after completing the request let the user download the file
                $.ajax(
                {
                    type : "POST",
                    dataType : "text",
                    // 'your_php_file' must be an ABSOLUT or RELATIVE path!
                    url: your_php_file,
                    // 'elem' is a variable containing the download name
                    // you can call it in your php file through $_POST['download_name']
                    data: { download_name: elem },
                    // here we go magic:
                    // after the request is done run the popup for the download
                    complete: function()
                    {
                        window.location.href = href;
                    }
                });

                // Stop default behaviour until ajax request has been done
                e.preventDefault();
            };
        }
    }
});


 类似资料:
  • 问题内容: 我收到以下错误:给它时: ,但是当我在本地主机上给它时,它工作正常。 我尝试使用在Google搜索中找到的标头,也使用过标头,但仍然无法正常工作。 我认为主要问题是:但是我不明白。 任何人都可以向我解释这个问题,因为我对此很陌生。 问题答案: 我的情况是,我有一个链接按钮,但我没有使用e.PreventDefault() ASPX Java脚本

  • 帮助,我不能删除表中的最后一行。当我删除其他记录时没有错误,但是最后一个记录,我不能删除它 这是我的代码:

  • 问题内容: 上面的代码来自:http : //www.w3schools.com/ajax/ajax_xmlhttprequest_onreadystatechange.asp。 题: 根据本教程: 从什么时候开始,响应就准备好了,我们为什么还需要?和之间有什么区别? 问题答案: 响应的状态(通常)用于确定请求是否成功。 仅用于确定请求的状态,例如“尚未发送”(0),“完成并收到响应”(4)等。

  • 问题内容: 无法使用XMLHttpRequest获取数据(状态0,responseText为空): 它警告“状态0”。 与localhost请求的情况相同(cd_catalog.xml保存为本地文件) 但是使用本地主机IP请求 并与本地文件请求 一切正常(状态200) 什么会导致在线请求出现问题(状态= 0)? PS:Live HTTP标头显示在所有4种情况下一切正常: PS2:VMWare上的A

  • 我仍然试图学习如何创建一个搜索与搜索行动和数据库。但是我有太多的错误: > [运行时异常:没有为名称配置JPA EntityManagerFactory[默认]]当我修复文件时,会出现此错误,如: *db。违约driver=com。mysql。jdbc。驾驶员 db。违约url=“jdbc:mysql://localhost/search" db.default.user=root db.defa

  • 问题内容: 在PHP中使用的符号,以测试或从不同的或。 例如return ,return 。因此,如果所讨论的子字符串的位置在开始时就在以0为基数的字符串中进行搜索,您将获得哪个PHP可以与之区分开。 有没有办法在Python中做到这一点? 问题答案: 在Python中, 的身份操作测试(,)。 测试逻辑相等性(因此)的运算符。 从技术上讲,这两者都不完全等同于PHP ,后者比较了逻辑相等性和Py