我在HTML文件中有一个JavaScript,可以在$ .get jquery API中调用php文件。当我在运行WAMP的计算机上运行HTML文件时(对于php),我无法在屏幕上获得php函数的结果,既不是h1标签的文本也不是打印功能的输出。非常感谢您的回答。
此致
这是我的html文件AJAXTest.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="EN" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/xml; charset=iso-8859-1" />
<script type = "text/javascript"
src = "jquery-1.3.2.min.js">
</script>
<script type = "text/javascript">
$(init);
function init(){
alert("init passage 2" + " Andy");
$.get("http://localhost/greetUser.php", { "userName": "Andy" }, processResult);
alert("processresult passage" + data);
$("#output").html(data);
}
function processResult(data, textStatus){
alert("processresult passage" + data);
$("#output").html(data);
}
</script>
<title>AJAXTest.html</title>
</head>
<body>
<h1>Test AJAX</h1>
<div id = "output">
C’est la sortie par défaut
</div>
</body>
</html>
这是我的php文件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="EN" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/xml; charset=iso-8859-1" />
<title>greetUser.php</title>
</head>
<body>
<div>
<h1>Réponse</h1>
<?php
$userName = $_REQUEST["userName"];
print "<p>Salut, $userName!</p> ";
?>
</div>
</body>
</html>
答案 0 :(得分:1)
看起来一切都应该在很大程度上起作用,但我能看到的一件事就是破坏它,就是你拥有
alert("processresult passage" + data);
$("#output").html(data);
在$ .get调用之后直接在init()函数内部调用。 在执行的这一点上,&#39;数据&#39;变量不存在并使用它将导致错误并停止所有javascript继续,因为执行必须等到返回请求才能处理它(在processResult函数中,您似乎正在正确处理)< / p>
删除这些行,我认为应该可以解决您的问题。
答案 1 :(得分:-1)
试试这个:
<script type = "text/javascript">
init();
function init(){
$.post("http://localhost/greetUser.php", { "username": "Andy" }, function(data,textStatus){
$("#output").html(data);
});
}
</script>
更新
我不理解downvote,但是如果你尝试这个,它可以工作:
<script type = "text/javascript">
init();
function init(){
$.post("http://localhost/file.php", { "username": "Andy" }, function(data,textStatus){
$("#output").html(data);
});
}
</script>
<title>AJAXTest.html</title>
</head>
<body>
<h1>Test AJAX</h1>
<div id = "output">
C’est la sortie par défaut
</div>
</body>
</html>
PHP文件:
<?php
$userName = $_POST["username"];
print "<p>Salut, $userName!</p> ";
?>