这是我的第一个发出XHR请求的代码,尝试调试但无法找到故障所在。 我正在使用谷歌浏览器和wamp服务器。我使用的URL是我自己的计算机中的HTML文件
我很抱歉帮助我解决问题。 我期待什么结果?
我希望我的浏览器会打开localhost / CSS / Margins / margin.html
但是,当我点击“点击我!”时,页面就会变成空白。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Project 1</title>
<script type="text/javascript">
var a; //Creating an object for the request named "a"
if(window.XMLHttpRequest)
{
a = new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
a= new ActiveXobject("Microsoft.XMLHTTP");
}
function response() //This is the function that I would use as callback function
{
if(a.readyState==4)
{
if(a.status==200)
{
alert("perfect");
}
else
{
alert("Getting improper response");
}
}
else
{
alert("Not getting response");
}
}
function open() //Making the request
{
a.open('GET', "localhost/CSS/Margins/margin.html", true);
a.onreadystatechange = response;
a.send(null);
}
</script>
<span onclick="open();">Click me!</span> //This onclick event would call the function that would make the request.
</head>
<body>
</body>
</html>
答案 0 :(得分:0)
您的代码很好,但您输入的网址不是全局的,而是指向当前网页的相对路径。
将其更改为a.open('GET', location.protocol+"//localhost/CSS/Margins/margin.html", true);
答案 1 :(得分:0)
感谢您的帮助。
我犯的主要错误是打开函数的名称。它是一个关键字。 一旦我更改了它,浏览器就开始响应警报框。
我很感谢你的帮助。
PS-我用过:
a.open(&#34; GET&#34;,&#34; // localhost / CSS / Margins / margin.html&#34;,true);