跳到主要內容

發表文章

目前顯示的是 12月, 2021的文章

使用Ajax長輪詢跨頁資料查詢操作-教學撰寫:徐嘉裕Neil hsu

會使用到Ajax長輪詢功能也是意外,本來是想用JS跨域查詢,由A頁面查詢B頁面執行ajax程序後返回值做同步處理,結果經測試JS跨域查詢只能查到讀取頁面的原始資料,無法取得JS程序處理過後的變動數值,試了半天,只好用Ajax長輪詢來解決問題了,順便寫一個工作心得做為紀錄 Ajax長輪詢跨頁資料查的運作原理如下圖 以上圖解也就是使用Ajax長輪詢保持連線持續查詢資料庫,若有比對到資料則返回數值後以非同步方式更新內容,沒有就繼續查,保持連線狀態,舉一個Ajax長輪詢應用實例大家就清楚了,FB上貼文留言,即便未更新頁面,有其他用戶的的留言也會即時顯示在留言處,這就是使用了Ajax長輪詢的效果讓Ajax一直保持在 連線查詢返回更新 狀態,即時同步資料。 以下為Ajax長輪詢CODE 範例 //HTML結構 <div id='showbox'><span id='numberbox'> 30 </span></div> <script>ajaxlongpolling();</script> // 30 為固定值,透過JS取值後傳送到ajax.php比對資料 //JS結構-$.ajax function ajaxlongpolling() { $.ajax({ url: 'ajax.php', timeout: '80000', //ajax請求超時時間80秒 type: 'POST', data: { var1: $("#numberbox").text(), //取的#numberbox中數值 timedate: '80' //40秒後無論結果伺服器都返回數據 }, success: function(response) { var $response_arr = response.split(','); //切割陣列 //返回1->查詢到資料-重新讀取ajaxlongpolling(); if