Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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 ajax状态=0_Javascript_Ajax_Status - Fatal编程技术网

Javascript ajax状态=0

Javascript ajax状态=0,javascript,ajax,status,Javascript,Ajax,Status,我正在尝试从本地计算机上的远程服务器获取信息。 readyState没有问题,即==4。但是,状态始终为0(而不是200) 当我按下按钮时,它什么也不返回 这是代码: <html> <head> <script type="text/javascript"> function loadXMLDoc() { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome,

我正在尝试从本地计算机上的远程服务器获取信息。 readyState没有问题,即==4。但是,状态始终为0(而不是200) 当我按下按钮时,它什么也不返回

这是代码:

<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET",'http://www.spartanbook.com/textbooks_xml.asp?control=campus&campus=45&term=80',true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>

</body>
</html>

函数loadXMLDoc()
{
var-xmlhttp;
if(window.XMLHttpRequest)
{//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}
其他的
{//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数()
{
if(xmlhttp.readyState==4&&xmlhttp.status==200)
{
document.getElementById(“myDiv”).innerHTML=xmlhttp.responseText;
}
}
open(“GET”http://www.spartanbook.com/textbooks_xml.asp?control=campus&campus=45&term=80",对),;
xmlhttp.send();
}
让AJAX更改此文本
更改内容
它基本上来自w3shcools。只需替换url即可。 当我将它粘贴到浏览器的地址栏时,我使用的url正在工作

有什么想法吗?
谢谢

检查您是否没有提出跨域请求

例如,如果您没有从此页面提供服务,那么预期结果将是访问被拒绝,这很奇怪,readyState为4,但状态为0


如果需要发出跨域请求,则需要使用代理。

检查您是否没有发出跨域请求

例如,如果您没有从此页面提供服务,那么预期结果将是访问被拒绝,这很奇怪,readyState为4,但状态为0


如果需要发出跨域请求,则需要使用代理。

此错误代码表示响应为空。似乎是防火墙问题

此错误代码表示响应为空。似乎是防火墙问题

正如Gavin所说,您的问题似乎是您正在发出跨域请求,由于安全原因,大多数浏览器都会阻止该请求:

我建议您将代码从本地计算机移动到满足“同一原产地政策”的地方,您的情况是www.spartanbook.com上的某个地方


然而,有一个解决问题的方法,那就是使用。这将允许您从另一个域上的程序获取JSON数据。

正如Gavin所说,您的问题似乎是您正在发出跨域请求,由于安全原因,大多数浏览器都会阻止该请求:

我建议您将代码从本地计算机移动到满足“同一原产地政策”的地方,您的情况是www.spartanbook.com上的某个地方


然而,有一个解决问题的方法,那就是使用。这将允许您从另一个域上的程序获取JSON数据。

“任何想法?”:不要使用w3schools:-)它不起作用,因为。“任何想法?”:不要使用w3schools:-)它不起作用,因为.Gavin,我可以通过浏览器访问内容,但不能通过代码访问。所以我猜它与域无关。@user788072:这正是问题所在——跨域策略适用于JavaScript代码中的JavaScript异步请求。当然,您可以在浏览器中访问它--您的浏览器可以访问任何域+1来抵消可能的不知情的否决票,直到被否决的人出来解释原因,事实上有一个很好的理由。嗨,程。您需要通过本地代理传递请求。请以这个链接为例。Gavin,我可以通过浏览器访问内容,但不能通过代码访问。所以我猜它与域无关。@user788072:这正是问题所在——跨域策略适用于JavaScript代码中的JavaScript异步请求。当然,您可以在浏览器中访问它--您的浏览器可以访问任何域+1来抵消可能的不知情的否决票,直到被否决的人出来解释原因,事实上有一个很好的理由。嗨,程。您需要通过本地代理传递请求。请以这个链接为例。防火墙从我这边还是他们那边?防火墙从我这边还是他们这边?