我想用一个简单的程序测试php-Ajax。我使用html和php文件都存储在同一目录(/ var / www / html)中。当我点击按钮时,它会在控制台中显示以下错误。 XML解析错误:找不到根元素位置。 ??
html文件
<html>
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta content="utf-8" http-equiv="encoding">
<title> Ajax testing </title>
<script type="text/javascript">
function load(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("result").innerHTML = this.responseText;
}
};
xmlhttp.open("GET", "simple.php" , true);
xmlhttp.send();
}
</script>
</head>
<body>
<button onclick="load();">Click here</button>
<div id="result"> </div>
</body>
</html>
php文件
<?php
echo "Hello";
?>
这段代码有什么问题?
答案 0 :(得分:0)
这个帖子解释了它xmlhttprequest for local files
来自主题:
从历史上看,您无法从JavaScript查询本地文件(或者不允许使用JavaScript,或者某些东西是奇怪的)。这将严重违反安全规定。
只有少数情况可以执行此操作,但通常它们涉及需要为浏览器设置的特定安全设置,以解除限制或通知当前页面的执行过程被授予这种特殊权利。例如,这可以通过编辑属性在Firefox中实现。在开发浏览器扩展程序(例如Chrome或FF)时,如果他们请求文件访问权限,通常也可以。
我刚刚安装了Apache服务器并保存了我的php文件。我知道这有点矫枉过正,但嘿,它有效:)