我试图通过ajax将一些数据发回到同一页面。在下面的示例中,一旦单击按钮,$name
变量就不会在我的页面中更新。但是,如果我查看来自ajax的响应的控制台日志(使用萤火虫),它会显示正确的html,并插入名称(即<div>Matthew</div>
) - 页面只是没有被此响应更新。任何想法如何解决这个将不胜感激。当返回到当前页面时不显示jQuery ajax响应
我的代码是:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<?php
$name = "A name";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$name = "No name!";
}
else{
$name = $_POST["name"];
}
}
?>
<script>
$(document).ready(function(){
$("button").click(function(){
var mydata = {name: "Matthew"};
$.ajax({
type: 'POST',
data: mydata,
success: function(data){
console.log(data);
}
});
});
});
</script>
<button>Send an HTTP POST request to a page and get the result back</button>
<div id="name">
<?php echo $name;?>
</div>
</body>
</html>
页面不会只是更新其自我 - 这就是AJAX的整点,你需要使用返回的数据(在成功的函数)通过javascript更新它。 – Steve
Ajax不能这样工作。转到你的'success:function',在那里,你将'data'分配给'div'标签。 –
或者只是做一个常规的表单发布,sans ajax – Steve