[英]Ajax Request on Safari not working
我有一个带有ajax请求的HTML页面,该页面在firefox上运行良好,但是safari没有任何作用。 在调试时,我看到readystate未定义,状态为“”。 有谁知道为什么它不适用于野生动物园?
JavaScript代码:
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("demo").innerHTML =
this.responseText;
}
};
xhttp.open("GET", "pegSolitaireSettings.html", true);
xhttp.send();
}
function reloadGame() {
location.reload();
}
</script>
HTML代码:
<div id="demo">
<button type="button" onclick="loadDoc()">Settings</button>
<div class="center-div">...</div>
</div>
Firefox无法为您解决错误,而Safari无法为您解决。
您正在尝试请求相对URL: "pegSolitaireSettings.html"
将其更改为: "http://HOSTNAME/pegSolitaireSettings.html"
或"//HOSTNAME/pegSolitaireSettings.html"
,它将正常工作。
其中HOSTNAME是主机的域名。
这就是我实际上拥有的(简化的)功能,可以在浏览器中访问http://www.pegsolitaire.com/pegSolitaireSettings.html
,因此虚拟主机应该不是问题
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="CSS/styles.css" type="text/css"> <script> function loadDoc() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.responseText; } }; xhttp.open("GET", "http://www.pegsolitaire.com/pegSolitaireSettings.html", true); xhttp.send(); } function reloadGame() { location.reload(); } </script> </head> <body> <div id="demo"> <button type="button" onclick="loadDoc()">Settings</button> <div id="gameInfo" align="center"> <br> <div class="values" id="totalTime"></div> </div> </div> </body> </html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.