####### The name of this file is 'test_ajaxfn.php' #######
<?php
if($_POST['var']) {
$result = $_POST['var'];
echo $result.' is successfully passed to the same page using Ajax Post. :)';
} else {
echo 'There is no POST variable passed to the same page. :( ';
}
echo '<br> Above indicates the ajax post function \'.\' ';
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>Untitled Document</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script>
$(document).ready(function() {
$('#clickdiv').click(function() {
var sth = "value to send to PHP";
$.post(
'test_ajaxfn.php',
{"var":"1234567"},
function(){
alert('success');
$('#clickdiv').text('the POST variable should be posted.');
}
);
});
});
</script>
</head>
<body>
<div id="clickdiv" style="width: 50px; height: 50px; background:#CC3300; cursor:pointer;">
</div>
</body>
</html>
我想将POST变量传递到同一页面并使用AJAX加载它。但是,我没有这样做。我无法使用POST方法将“var”传递给$ _POST ['var']。因此我无法显示以下内容: echo $ result。'使用Ajax Post成功传递到同一页面。 :)';
我做错了什么?
我实际上是想解决这个问题: Calculate Google distance of Input address and all the address from MySQL Server using jQuery ajax.get 现在我简化了我的问题,但它仍然无效。请帮忙:(
答案 0 :(得分:0)
如果将其发布到同一页面,则服务器会创建一个新进程来处理请求。您没有看到任何输出的原因是因为服务器正在查看文件的帖子,启动实例并执行php脚本,但这与您的php线程不同。将您的脚本更改为此以查看您的成功文本。
<script>
$(document).ready(function() {
$('#clickdiv').click(function() {
var sth = "value to send to PHP";
$.post(
'test_ajaxfn.php',
{"var":"1234567"},
function(result){
alert(result);
$('#clickdiv').text('the POST variable should be posted.');
}
);
});
});
</script>