2009/08/05

[AJAX] 等待 jQuery.post() 處理時載入 "處理中..." 訊息


jQuery 的 post() 函數雖然可以輕易使用 AJAX 方法上傳資料,但是卻沒有在處理進度的時候顯示 "處理中" 訊息的功能,在 jQuery 的官方討論版中,有人就提出了這個問題,當然也獲得了解決

就是使用 $.ajaxStart() + $.ajaxStop() 配合 blockUI (官方網站) 達成
在 $(document).ready() 函數中,加入以下這幾行

if($.isFunction($.blockUI)==false){
alert('"jquery.blockUI.js" 未載入');
return 0;
}
$().ajaxStart($.blockUI).ajaxStop($.unblockUI);

這樣就可以讓網頁 自動判斷 是否有AJAX 事件觸發,並顯示類似 "處理中" 的訊息

說明:
ajaxStart(),ajaxStop 是 jQuery 的內建函數,$.blockUI 和 $.unblockUI 則是 blockUI 的函數
由於 blockUI 非 jQuery 內建,所以要先加入判斷是否載入

在 blockUI 的官方網站中就直接教你怎麼做了

沒有留言:

張貼留言

Web 技術中的 Session 是什麼?

轉載原文:  Web 技術中的 Session 是什麼? 本文目標 在 Web 的世界裡,Session 已經是被廣泛使用的一種技術,大多數的 Web 開發者,肯定都能運用自如。在現今的各類 Web 應用程式的開發框架和工具中,Session 也已經被包裝成容易使用的模...