我不知道我是不是愚蠢。我一直试图在过去1小时内解决这个问题。请帮忙!!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="jquery.js" type="text/javascript"></script>
</head>
<body>
<div id="box" ></div>
<div id="box2"></div>
<script type="text/javascript">
$(function(){
$('#box').html("Test");
//$('#box').attr('name','Indy');
//var a= $('#box').attr('name');
$.post(window.location, {name: 'John'});
});
</script>
</body>
</html>
<?php
print_r($_POST);
?>
如何传递值?我知道如果php在不同的文件中,这是有效的。但这不是这种情况。
答案 0 :(得分:16)
您将看不到请求的结果,因为$.post()
并且所有AJAX函数都在后台运行,而不会刷新页面。
至于发布到当前页面,只需使用窗口的位置:
$.post(window.location, {name: 'John'}, function(data) {
alert('POST was successful. Server says: ' + data);
});
答案 1 :(得分:1)
$ .post是一个异步发布相同的php文件。您不会在页面正文中看到任何内容,因为
<?php
print_r($_POST);
?>
在</html>
标记之后。
如果您想要将某些内容发布到php文件中,然后对其进行处理并将结果显示在页面中,只需创建一个实际POST到php文件的表单即可。 AJAX并不总是正确的答案。
答案 2 :(得分:1)
您可以尝试将其插入到您的javascript代码中:
$('some_button').click(function(){
window.location = "http://your_site/page.php?name=John&var2="+param2;
});
这段代码的作用是在url中添加一些参数,你可以使用GET在php页面中访问它。 例如:
if(isset($_GET['name'])){
echo $_GET['name'];
}