我有一個使用ajax調用來更新自己的倒數計時器。像定時器倒數至零時更新數據庫
<div class="timer5">--:--:--</div>
東西,我想調用一個PHP函數(僅一次)使用jQuery一旦該定時器爲00:00:00,這將更新數據庫。
事情是,定時器可以在任何時候增加(這是一個拍賣),所以我不能只在X時間後運行腳本,將更新數據庫。當定時器真的達到零時,我必須調用腳本。
這怎麼辦?在jQuery中是否有某種事件?
我有一個使用ajax調用來更新自己的倒數計時器。像定時器倒數至零時更新數據庫
<div class="timer5">--:--:--</div>
東西,我想調用一個PHP函數(僅一次)使用jQuery一旦該定時器爲00:00:00,這將更新數據庫。
事情是,定時器可以在任何時候增加(這是一個拍賣),所以我不能只在X時間後運行腳本,將更新數據庫。當定時器真的達到零時,我必須調用腳本。
這怎麼辦?在jQuery中是否有某種事件?
根據我的經驗jquery countdown plugin適合這些東西。使用這個插件,你可以輕鬆地做到這一點。
var auction_id = array('1','2','3','4','5') // auction ids in array
jQuery(auction_id).each(function(key, val){
jQuery('.countbox-'+val).countdown({
//other options ref in plugin link
onExpiry: function(){
sold(val); // passing argument
//ajax call goes here to update db
}
});
}
要更新您的時鐘,我已經回答了here。答案的第二部分將對你有幫助。
如果您想在頁面中創建多個拍賣時鐘,您需要收集陣列中的所有拍賣ID 。然後您可以爲每個拍賣創建時鐘。
如果使用AJAX完成,您已經獲得了一個到您的服務器的電話,更新計時器並知道剩下多少時間。在那裏做數據庫更新。
將Javascript用於定時器,並在定時器結束時調用Ajax函數,並在結束執行時刪除該函數。 –
將此計時器值存儲在js變量中,並將settimeout存儲到該變量中,並在每個ajax更新上更新該變量。在超時時調用php函數。 – usmanali
這需要在服務器上進行控制。如果兩個人同時打開該頁面會怎麼樣? – Dereleased