html:24 Uncaught ReferenceError: onreadystatechange is not defined at 1.html:24:26 (匿名) @ 1.html:24 1.html:68 Access to XMLHttpRequest at 'file:///C:/test.xml' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome, https, chrome-untrusted. 1.html:23 GET file:///C:/test.xml net::ERR_FAILED (匿名) @
时间: 2024-02-01 21:04:48 浏览: 344
这些错误提示表明你在本地使用了一个跨域请求,而浏览器不允许跨域请求本地文件系统。因此你需要将文件放到一个 web 服务器上,然后通过 HTTP 协议访问它。此外,你还需要正确定义 `onreadystatechange` 函数来处理 AJAX 请求的状态变化。你可以参考下面的代码示例:
```html
<!DOCTYPE html>
<html>
<head>
<title>AJAX Example</title>
<script>
function loadXMLDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("demo").innerHTML = this.responseText;
}
};
xhttp.open("GET", "test.xml", true);
xhttp.send();
}
</script>
</head>
<body>
<button type="button" onclick="loadXMLDoc()">Load XML</button>
<br><br>
<div id="demo"></div>
</body>
</html>
```
在这个示例中,我们使用了一个按钮元素来触发 AJAX 请求,并且将返回的 XML 数据展示在一个 `div` 元素中。同时,我们还定义了 `onreadystatechange` 函数来处理 AJAX 请求的状态变化,当请求成功返回时,我们使用 `innerHTML` 方法将返回的数据显示在网页上。
阅读全文