阿摩線上測驗 登入

申論題資訊

試卷:106年 - 106年公務人員普通考試-程式設計概要#63225
科目:程式設計
年份:106年
排序:0

題組內容

五、AJAX 即「Asynchronous JavaScript and XML」(非同步的 JavaScript 與 XML 技術) 為一重要且普遍用來產生高互動網頁的技術,可讓使用者在執行 AJAX 網頁時就像在執行桌上電腦程式(desktop application)一樣順暢(如圖二)。
5ebca8392d162.jpg

申論題內容

(二)並請以以下網頁為例,當使用者輸入字元後的網頁反應,說明傳統非 AJAX 與 AJAX 網頁不同之處。

詳解 (共 1 筆)

詳解 提供者:hchungw
 
傳統非AJAX網頁與AJAX網頁在用戶輸入字元後的回應上有很大的不同。這些差異主要表現在用戶體驗、頁面性能和服務器交互上。
傳統非AJAX網頁:
全頁刷新:在傳統的非AJAX網頁中,每次用戶輸入數據並提交表單後,流覽器會發起一個新的HTTP請求到伺服器,並加載伺服器回應的完整新頁面。這個過程涉及到整個頁面的刷新。
等待時間:用戶可能會遇到明顯的等待時間,因為整個頁面需要從伺服器重新加載,特別是在網路延遲或伺服器回應慢的情況下。
資源消耗:每次都需要加載完整頁面,增加了帶寬消耗,也可能導致伺服器負載增加。
用戶體驗:頁面閃爍和重新渲染可能會影響用戶體驗,尤其是在只需要更新頁面一小部分內容的情況下。
AJAX網頁:
局部更新:使用AJAX的網頁可以僅更新用戶交互涉及的部分,而無需重新加載整個頁面。例如,當用戶在搜索框輸入文字時,網頁可以即時顯示搜索建議。
無感交互:因為AJAX請求是非同步的,用戶在等待伺服器回應的同時,仍然可以與頁面的其他部分進行交互。
效率和性能:只傳輸必要的數據而不是整個頁面,減少了數據的使用量,減輕了伺服器的負擔,並提高了網頁回應速度。
更好的用戶體驗:頁面無需刷新就可以更新,提供了更流暢和快速的用戶體驗,類似於桌面應用。
例如,在您提供的代碼示例中,當用戶在輸入框中輸入文字時,JavaScript會捕獲這個事件,併發起一個AJAX請求到伺服器獲取數據(如自動完成的建議)。伺服器回應該請求並返回數據,然後JavaScript更新頁面的相關部分(如顯示建議的列表),而整個頁面其餘部分保持不變。與此同時,頁面沒有重新加載,用戶幾乎沒有察覺到後臺發生的數據交換過程。