我正在尝试使用XMLHttpRequest
对象在JavaScript中做一个示例。我做了一个HTML文件,如下所示:铬中的XMLHttpRequest错误
<!DOCTYPE HTML>
<html>
<head>
<title>
AJAX simple example
</title>
</head>
<body>
<div id="mainContent">
<h1>This is an AJAX example</h1>
</div>
<script src="script.js"></script>
</body>
</html>`
和我的剧本是这样的:
//simple AJAX example:
var myRequest;
if (window.XMLHttpRequest) {
myRequest = new XMLHttpRequest();
} else if (window.ActiveXObject) {
myRequest = new ActuveXObject("Microsoft.XMLHTTP");
}
myRequst.onreadystatechange = function(){
console.log(myRequest.readyState);
if(myRequest.readyState === 4){
var p = document.createElement("p");
var text = document.createTextNode(myRequest.responseText);
p.appendChild(text);
document.getElementById("mainContent").appendChild(p);
}
};
myRequest.open("GET", "source.txt", true);
myRequest.send(null);
我一直在Chrome打开HTML文件时,得到一个错误,我得到在控制台下面的错误:
XMLHttpRequest无法加载文件:.../ajaxRequestExample/source.txt。协议方案仅支持交叉源请求:http,data,chrome,chrome-extension,https,chrome-extension-resource。
从'http://'而不是'file:///'运行它。还有可以使用的chrome标志,但对于更实际的测试,强烈建议使用简单的HTTP。如果你有python,那么你可以用一个命令行来启动一个内置的。 – dandavis
你应该使用一些服务器来通过'ajax'从那里获取任何内容。即使你做了一些实验,这也是一个很好的做法。 –
我想,@ dandavis试图建议你从**本地主机**运行你的文件..再加上,使用**微型AJAX **而不是https://code.google.com/p/microajax/ – ymz