2015-09-15 59 views
1

我使用jquery/ajax和php進行主動/停用狀態,它的工作方式類似於當用戶點擊主動變爲停用時,反之亦然,我可以運行這個,但有時候我點擊主動和取消按鈕它連續加載整個div部分。Jquery Refreshing Div只有一次

我的要求是在點擊主動/禁用狀態後,div應該只加載一次,並且應該停止遞歸地閃爍2到3次!

while($row = $data->fetch_arry(MYSQLI_ASSOC)) 
{ ?> 
    <div> 
     <?php if($row['status'] == '1'){?> 
     <a class='btn btn-success active'></a> 
     <?php else if($row['status'] == '0')?> 
     <a class='btn btn-danger deactive'></a> 
     <?php } ?> 
    </div> 
<?php } ?> 

jQuery代碼

$('body').delegate('.active','click',function(e){ 
    var IDstatus = 0; 
    $.post('status.php',{ 
     status:IDstatus 
    },function(e){ 
     $('#div_load').load('#div_load'); 
    }) 
}) 

$('body').delegate('.deactive','click',function(e){ 
    var IDstatus = 1; 
    $.post('status.php',{ 
     status:IDstatus 
    },function(e){ 
     $('#div_load').load('#div_load'); 
    }) 
}) 

我只希望我的#div_load應該改變我的身份後刷新一次!

任何幫助表示讚賞謝謝!

+0

你試圖在自己的'load'元素上這是非常無效的。 'load'應該用來加載外部文件元素及其'ajax'種類 –

+0

@GuruprasadRao謝謝!!我改變了它('#div_load')。load('demo.php');仍然是它的加載/閃爍 – Sjay

+0

嘗試使用'$ .when'和'.done'加上'$ .post'並將'$ .load'寫入'.done'中 –

回答

1

嘗試使用以下

$(document).rady(function(){ 
$(".active").click(function(){ 
    $.ajax({ 
    url: "status.php", 
    data:{status:1}, 
    dataType:'html', 
    success: function(result){ 
     $('#div_load').html(result); 
    } 
    }); 
});$(".deactive").click(function(){ 
    $.ajax({ 
    url: "status.php", 
    data:{status:0}, 
    dataType:'html', 
    success: function(result){ 
     $('#div_load').html(result); 
    } 
    }); 
}); 

});

不要使用load()...它就像ajax一樣。只是將數據從你想要加載的服務器中傳送出去

+0

謝謝你的代碼..我使用ur代碼它工作鰭,但我得到更新成功html msg它將被更新後仍然不錯,保持在同一頁面任何幫助讚賞謝謝! – Sjay

+0

我想幫忙。但我無法理解你想告訴你什麼。你可以編輯你的文章並更新你當前的腳本。 –