我想更新我的用戶表中的狀態 - 當用戶點擊一個按鈕我用ajax發送它到php頁面,但在響應頁面重新加載,因爲我用`位置.reload();.有沒有辦法讓我的按鈕改變其狀態,而無需重新加載頁面?php + ajax沒有頁面刷新
的按鈕:
<i data="<?php echo $row['id'];?>" class="status_checks btn <?php echo ($row['payment_status'])? 'btn-success' : 'btn-danger'?>"><?php echo ($row['payment_status'])? 'Paid' : 'Unpaid'?></i>
PHP更新數據庫
<?php
extract($_POST);
$user_id=$db->real_escape_string($id);
$status=$db->real_escape_string($status);
$sql=$db->query("UPDATE users SET payment_status='$status' WHERE id='$id'");
echo $sql;
?>
最後,jquery的
<script type="text/javascript">
$(document).on('click','.status_checks',function(){
var status = ($(this).hasClass("btn-success")) ? 'Unpaid' : 'Paid';
var msg = (status=='Unpaid')? 'Unpaid' : 'Paid';
if(confirm("Are you sure to "+ msg)){
var current_element = $(this);
url = "update.php";
$.ajax({
type:"POST",
url: url,
data: {id:$(current_element).attr('data'),status:status},
success: function(data)
{
location.reload();
}
});
}
});
</script>
而不是重裝調整'div'或任何元素的值您所使用的顯示狀態 – RST