Javascript 为什么XMLHttpRequest在本地托管文件中不工作?
我是HTML、PHP和web编程的初学者 我的第一个项目是一个连接到MySQL数据库的PHP页面。我正在使用此javascript代码将信息发送到另一个PHP页面:Javascript 为什么XMLHttpRequest在本地托管文件中不工作?,javascript,php,ajax,google-chrome,Javascript,Php,Ajax,Google Chrome,我是HTML、PHP和web编程的初学者 我的第一个项目是一个连接到MySQL数据库的PHP页面。我正在使用此javascript代码将信息发送到另一个PHP页面: <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>ERP</title> <link rel="stylesheet" href=
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ERP</title>
<link rel="stylesheet" href="css/bootstrap.min.css" />
<link rel="stylesheet" href="css.css" />
<script type="text/javascript" src="oXHR.js"></script>
<script type="text/javascript"></script>
<script>
function DelRow(callback)
{
alert("FIRSTALERT");
var xhr = XMLHttpRequest();
alert("SecondALERT");
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0))
{
callback(xhr.responseText);
}
};
var Comp = encodeURIComponent(document.getElementById("ComboBoxCompany").value);
xhr.open("GET", "DeleteRow.php?Comp=" + Comp, true);
xhr.send(null);
}
function readData(sData)
{
alert(sData);
};
</script>
</head>
企业资源计划
函数DelRow(回调)
{
警报(“第一警报”);
var xhr=XMLHttpRequest();
警报(“第二警报”);
xhr.onreadystatechange=函数()
{
如果(xhr.readyState==4&&(xhr.status==200 | | xhr.status==0))
{
回调(xhr.responseText);
}
};
var Comp=encodeURIComponent(document.getElementById(“ComboBoxCompany”).value);
open(“GET”、“DeleteRow.php?Comp=“+Comp,true”);
xhr.send(空);
}
函数读取数据(sData)
{
警报(sData);
};
这个函数是由一个坏男孩调用的:
<input class="btn btn-primary" type="button" value="Confirmer" name="ConfirmDel" onclick="DelRow(readData)" />
如果你看一下我的javascript代码,我已经发布了2个警报。第一个正在出现,但第二个没有出现。getXMLHttpRequest似乎不起作用
我在用谷歌浏览器。我发现一些线程说我需要执行以下命令行:
C:\Users\User>C:\ProgramFiles(x86)\Google\Chrome\Application
--允许文件
-从文件访问
但这并没有改变什么
我还不清楚,正在寻找一些见解。如果你没有收到第二次警报,你几乎可以排除第二次警报之后出现的所有情况,因为它们都不会被执行。这使得问题很容易找到,因为它必须是这一行:
var xhr = XMLHttpRequest();
您只是缺少了new
关键字
var xhr = new XMLHttpRequest();
在哪里定义了
getXMLHttpRequest
?ajax请求与此问题无关如果您没有收到第二个警报,您甚至还没有发送请求。将PHP从文件系统中调用???您需要使用本地服务器,该php文件不会神奇地运行。什么是getXMLHttpRequest
?@epascarello它正在与XAMPP服务器一起运行。页面显示没有任何问题!实际上,在我按下帖子中描述的按钮后,getXMLHttpRequest的调用不起作用。@Kevin B我不知道它是在哪里定义的。我目前正在学习W3CSchool关于使用PHP的ajax的教程,他们就是这样展示的。还有其他方法吗?链接到教程,我的搜索阻止了所有w3schools链接,因此我无法找到它。再次感谢您的帮助!