AJAX五步使用法及中文亂碼處理!
也是從《AJAX技術入門》的視訊上摘錄的程式碼,覺得蠻有用滴,記下來了,以後要用到AJAX的直接在自己的部落格上找就得了,省了GOOGLE的時間,嘿嘿!
效果圖如下:只是實現一個簡單的使用者名稱驗證!
[img]http://niunan.iteye.com/upload/picture/pic/23327/8d9f3947-98b9-3cef-a6ce-cabda3fbfa35.jpg[/img]
程式使用ASP.NET實現!
Default.aspx頁面原始碼:
一般處理程式AJAXGB.ashx原始碼:
效果圖如下:只是實現一個簡單的使用者名稱驗證!
[img]http://niunan.iteye.com/upload/picture/pic/23327/8d9f3947-98b9-3cef-a6ce-cabda3fbfa35.jpg[/img]
程式使用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;
}
}
}
相關文章
- jQuery AJAX中文亂碼處理jQuery
- java處理中文亂碼問題Java
- Xshell中文亂碼怎麼處理?
- Mysql輸出中文顯示亂碼處理MySql
- secure crt(從windows)連線solaris,中文亂碼處理辦法Windows
- Zabbix7 亂碼處理
- Oracle 中文字元及中文亂碼判斷Oracle字元
- 處理ajax返回的js程式碼JS
- ajax呼叫,action返回的中文為亂碼的解決方案
- MySQL:亂碼問題處理流程MySql
- oracle alert日誌亂碼處理Oracle
- em 出現亂碼的處理
- jsp:useBean的亂碼處理JSBean
- Spring MVC的Post請求引數中文亂碼的原因&處理SpringMVC
- Zabbix頁面圖形內中文有亂碼問題處理(Zabbix 3.0.9)
- 解決ajax get post方式提交中文引數亂碼問題
- ajax使用url傳遞中文引數亂碼問題解決
- PHP-如何處理檔名亂碼PHP
- mysql中文亂碼MySql
- secureCRT中文亂碼Securecrt
- oracle 中文亂碼Oracle
- PHP中文亂碼PHP
- gedit中文亂碼
- gitk中文亂碼Git
- plsql中文亂碼SQL
- 解決Jquery Ajax提交 伺服器端接收中文亂碼問題jQuery伺服器
- Ajax接收int型別亂碼型別
- html之間傳值,如果有中文會出現亂碼處理辦法HTML
- 檔案下載檔名亂碼處理
- plsql顯示韓文亂碼的處理方法SQL
- wordpress 處理 ajax 請求
- java web 中文亂碼JavaWeb
- JS cookie 中文亂碼JSCookie
- 【故障處理】解決Linux系統、Vi、SQLPlus、PuTTY“中文亂碼”問題LinuxSQL
- 如何在rhel5開戶telnet服務及如何處理亂碼
- 字元顯示亂碼問題處理辦法字元
- perl處理中文
- javascript之處理Ajax錯誤JavaScript