我有这样的要求:
$(function(){
$("#novaProfaktura").click(function(){
$.ajax({
type: "POST",
url: "../Pages/Program.php",
data: { action: "testing" },
success: function()
{
alert("Ajax done"); //Testing purpose
}
});
location.reload();
});
});
然后在我的体内,我有这样的php:
<div id="Content">
<?php
echo("Php running <br>");
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
echo("Post running <br>");
if($_POST['action'] = "testing")
{
echo("Action running <br>");
}
}
?>
</div>
我从中得到的是alert message
,所以我假设ajax已正确设置并得到Php running
,但它没有通过if($_SERVER['REQUEST_METHOD'] == 'POST'
您可以看到div点击时正在运行jQuery代码。
我在做什么错了?
编辑:我用过function(data)
,但它似乎不起作用,但它不仅返回echoed
数据,而且返回整个页面。我使用了document.write()
,它重写了整个页面,但是如何获得特定的回声值呢?
答案 0 :(得分:0)
对此的答案是:
success: function()
{
alert("Ajax done"); //Testing purpose
}
使用此:
success: function(data)
{
alert("Ajax done"); //Testing purpose
document.getDocumentById('emptyDiv').innerHTML = data;
}
现在作为数据,您从运行文档的功能中获取所有HTML文本,因此我使用的不是url: "../Pages/Program.php"
,而是分隔文件url: "../Php/Testing.php"
,而在该文件中
仅此代码:
<?php
echo("Testing");
?>
答案 1 :(得分:-1)
$_POST['action'] = "testing"
这是变量赋值
$_POST['action'] == "testing"
这是比较。你想要这个。
$_POST['action'] === "testing"
这更好,因为它也是类型匹配的,它必须是字符串。