本示例演示基於 **ASP.NET Web Forms** + **原生 JavaScript (XMLHttpRequest)** 實現兩大經典 AJAX 場景:
技術棧:.NET Framework 4.x、C#、原生 JS (無 jQuery 依賴)、SQL Server (模擬數據)。
約定通過 URL 參數區分業務類型:
?Email=xxx@xxx.com → 郵箱驗證,返回 0(已存在) / 1(可用)?Selected=1 → 初始化省市數據,返回 省份列表&城市列表 (管道符分隔)?ProId=1 → 獲取指定省份的城市列表2. 郵箱驗證流程
3. 省市聯動:初始化與級聯
後端處理邏輯
前台頁面結構
現代化改造建議
- 替換為 Fetch API / Axios:簡化異步代碼,支持 Promise/async-await。
- 後端改用 Web API / Generic Handler (.ashx):職責分離,避免 Page_Load 膨脹。
- 數據格式改用 JSON:替代管道符分隔字符串,解析更健壯。
- 引入防抖/節流:郵箱輸入驗證時減少請求頻率。
- 安全加固:輸入驗證、SQL 參數化、CSRF Token、速率限制。
總結
本文通過完整的原生 JS + ASP.NET 示例,展示了 AJAX 核心機制:創建請求對象 → 異步發送 → 狀態監聽 → DOM 更新。雖然現代開發多使用 jQuery/Fetch/框架級封裝,但理解底層原理對排查疑難雜症、優化性能至關重要。