網頁數據的實時刷新
本來是打算在WEB頁面上實現這樣的功能:例如網頁上有多個按鈕,按鈕1,按鈕2,按鈕3等
按鈕1的響應比較耗時,如何能夠做到點擊了按鈕1之後,不用等待其響應,就可以再點擊其
他按鈕,而按鈕1響應結束之後會把結果刷出來?
仔細一想,這是不可能的!這種要求對winform的程序而言非常簡單,對web就難了。
不等待按鈕1的響應返回,只能是異步實現,開啟線程或者BeginInvoke。
但是頁面的刷新已經完畢,異步事件執行完之後如何再刷新頁面?
常見的頁面操作都是拉的技術,而由服務器到頁面是推的技術,如何實現?
也就是說,ASP.Net裡是無法實現異步的,所有的操作只能同步完成,我們錄入數據之後,通
過點擊或者其他操作,數據刷至服務器,我們等待服務器的返回。。。。。。
用AJax實現?
AJax是一種客戶端方法,可以與J2EE、.Net、PHP、Ruby、和CGI腳本交互,而並不必關心服務器是什麼。
這種技術允許浏覽器與服務器通信而無須刷新當前頁面的技術都涵蓋在內。
以下附上AJax交互的方法,它與標准Web客戶中所用的標准請求/響應方法有所差別:
1. 一個客戶端觸發一個AJax事件。
2. 創建XMLHttpRequest對象的一個實例。
3. 向服務器端做出響應。
4. 服務器可以做你想做的事情。
5. 請求返回到浏覽器。
6. XMLHttpRequest處理返回值,調用相應的函數進行顯示。