??? 也是從《AJAX技術入門》的視頻上摘錄的代碼,覺得蠻有用滴,記下來了,以后要用到AJAX的直接在自己的博客上找就得了,省了GOOGLE的時間,嘿嘿!
效果圖如下:只是實現一個簡單的用戶名驗證!
程序使用ASP.NET實現!
Default.aspx頁面源碼:
一般處理程序AJAXGB.ashx源碼:
效果圖如下:只是實現一個簡單的用戶名驗證!

程序使用ASP.NET實現!
Default.aspx頁面源碼:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>AJAX五步使用法及中文亂碼處理</title> <script type="text/javascript"> var xmlhttp; function submit() { // 1.創建XMLHttpRequest對象 if (window.XMLHttpRequest) { // IE7,IE8,FireFox,Mozilla,Safari,Opera xmlhttp = new XMLHttpRequest(); if (xmlhttp.overrideMimeType) { xmlhttp.overrideMimeType("text/xml"); } } else if(window.ActiveXObject) { // IE6,IE5.5,IE5 var activexName = ["MSXML2.XMLHTTP","Miscrosoft.XMLHTTP"]; for (var i = 0; i <activexName.length; i++) { try{ xmlhttp = new ActiveXObject(activexName[i]); break; } catch(e) { } } } if (xmlhttp == undefined || xmlhttp == null) { alert('當前瀏覽器不支持創建XMLHttpRequest對象,請更換瀏覽器'); return; } //2.注冊回調方法 xmlhttp.onreadystatechange = callback; //錯誤的寫法 //xmlhttp.onreadystatechange = callback(); // 獲取文本框中輸入的內容,經過兩次編碼防止中文亂碼 var userName = document.getElementById("UserName").value; userName = encodeURI(encodeURI(userName)); // GET方式交互 // 3.設置和服務器端交互的相應參數 xmlhttp.open("GET","AJAXGB.ashx?name=" + userName,true); // 4.設置向服務器端發送的數據,啟動和服務器端的交互 xmlhttp.send(null); /* // POST方式交互 // 3.設置和服務器端交互的相應參數 xmlhttp.open("POST","AJAXGB.ashx",true); // POST方式交互所需要增加的代碼 xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); // 4.設置向服務器端發送的數據,啟動和服務器端的交互 xmlhttp.send("name=" + userName); */ } function callback() { // 5 .判斷和服務器端的交互是否完成,還要判斷服務器端是否正確返回了數據 if (xmlhttp.readyState == 4) { // 表示和服務器端的交互已經完成 if (xmlhttp.status == 200) { // 表示服務器的響應代碼是200,正確的返回了數據 // 純文本數據的接受方法 var message = xmlhttp.responseText; // XML數據對應的DOM對象的接受方法 // 使用的前提是,服務器端需要設置content-type為text/xml // var domXml = xmlhttp.responseXML; //向div標簽中填充文本內容的方法 var div = document.getElementById("message"); div.innerHTML = message; } } } </script> </head> <body> <input type='text' id='UserName' value='牛腩' /> <input type='button' onclick='submit()' value='校驗用戶名' /> <br /> <div id="message"> </div> </body> </html>
一般處理程序AJAXGB.ashx源碼:
<%@ WebHandler Language="C#" Class="AJAXGB" %> using System; using System.Web; public class AJAXGB : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; string old = context.Request["name"]; if (string.IsNullOrEmpty(old)) { context.Response.Write("用戶名不能為空"); } else { string name = context.Server.UrlDecode(old); if (name.Equals("牛腩")) { context.Response.Write("用戶名[" + name + "]已經存在,請使用其他用戶名!"); } else { context.Response.Write("用戶名[" + name + "]尚未存在,可以使用該用戶名注冊!"); } } context.Response.End(); } public bool IsReusable { get { return false; } } }
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
