我試圖通過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