那些年,我還在學(xué)習(xí)Ajax 學(xué)習(xí)筆記_AJAX教程
推薦:javascript Ajax獲取遠程url的返回判斷將以下文本放入一個HTML頁面即可看到效果,將會有兩次彈出提示,最后在頁面上顯示YES,表示完成
通俗的說,Ajax就是一種網(wǎng)頁無刷技術(shù),以提高用戶體驗,Ajax并不是什么新的技術(shù),只是在那些年才火了起來(Ajax火起來時,哥只知道聊QQ),所以它就備受觀注;當(dāng)然,那些年就開始學(xué)習(xí)了。一、完成Ajax請求
1、 在完成這個請求之前,先來了解一下Ajax是什么,它的全名叫異步的javascript與、XML,從名稱可以看出,它與javascript和XML有不解之緣,Ajax使用XML地HTTP請求,通過瀏覽器建立的xmlHttpRequest對象,異步的向服務(wù)器發(fā)送請求,服務(wù)器處理請求后,將響應(yīng)通過xmlHttp.responseText屬性返回給javascript函數(shù)處理數(shù)據(jù),進一步使用javascript處理DOM,完成頁面的局部更新。
2、 代碼示例,使用XMLHttpRequest完成請求
代碼:JS:
復(fù)制代碼 代碼如下:www.hl5o.cn
<script type="text/javascript">
//XMLHttpRequest對象
var xmlHttp;
function buildXMLHttpRequest() {
//判斷瀏覽器
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //IE
} else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest(); //非IE
} else {
xmlHttp = NaN;
}
}
function sendRequest() {
buildXMLHttpRequest();
//Post請求
xmlHttp.open("post", "Handler.ashx", true);
xmlHttp.onreadystatechange = function() {
//判斷狀態(tài)
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
alert(xmlHttp.responseText);
}
}
//定義傳輸?shù)奈募﨟TTP頭信息
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); //采用的編碼方式
xmlHttp.send("value=1");
}
</script>
Handler.ashx:
復(fù)制代碼 代碼如下:www.hl5o.cn
<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using System.Web;
public class Handler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World xin_ny 中文件 "+context.Request.Params["value"]);
}
public bool IsReusable {
get {
return false;
}
}
}
效果:

記得在那些年,我還在學(xué)習(xí)Jquery中沒有說到它的Ajax方法,這里就補上了,JQuery提供了很多Ajax函數(shù),方便了開發(fā)人員的使用,不再需要開發(fā)人員創(chuàng)建XMLHttpRequest對象來完成請求,可直接使用JQuery庫中的Ajax函數(shù)完成請求,并兼容性也較好,下面就來看一下Jquery的Ajax吧。
1、Jquery得到數(shù)據(jù)方法:load()
例:
復(fù)制代碼 代碼如下:www.hl5o.cn
function ajaxMethod() {
$("#spanDiv").load("DemoData.txt");
}
2、Jquery的get(url,[data],callback)方法
例:
復(fù)制代碼 代碼如下:www.hl5o.cn
function ajaxGet() {
//對象數(shù)據(jù)源
var obj = { first: "First", second: "Second" };
$.get(
"CallBackData.ashx", obj, function(data) {
$("#spanDiv").html(data);
});
}
3、Jquery的post(url,[data],callback,type)方法
例:
復(fù)制代碼 代碼如下:www.hl5o.cn
function ajaxPost() {
//對象數(shù)據(jù)源
var obj = { first: "First", second: "Second" };
$.get(
"CallBackData.ashx", obj, function(data) {
$("#spanDiv").text(decodeURI(data));
});
}
4、Jquery的ajax(option)方法
例:
復(fù)制代碼 代碼如下:www.hl5o.cn
function ajaxAjax() {
//對象數(shù)據(jù)源
var obj = { first: "First", second: "Second" };
$.ajax({
type: "Get",
url: "CallBackData.ashx",
data: obj,
success: function(data) {
$("#spanDiv").text(decodeURI(data));
}
});
}
5、Jquery的ajaxSetup(options)方法,設(shè)置全局的ajax的配置
例:
復(fù)制代碼 代碼如下:www.hl5o.cn
function ajaxAjaxSetup() {
//對象數(shù)據(jù)源
var obj = { first: "First", second: "Second" };
$.ajax({
type: "Post",
url: "CallBackData.ashx",
data: obj,
success: function(data) {
$("#spanDiv").text(decodeURI(data));
}
});
}
6、Jquery的ajaxSubmit(options)方法,提交表單
總結(jié)
那些年學(xué)習(xí)Ajax,提高了用戶體驗,同時也減輕了服務(wù)器的負擔(dān),此文經(jīng)回憶那些年學(xué)習(xí)Ajax的日子。
分享:Ajax通訊原理XMLHttpRequestAJAX = 異步 JavaScript 和 XML。JavaScript不用說腳本語言,XML也不用說可擴展標(biāo)記語言用于存放數(shù)據(jù)信息
相關(guān)AJAX教程:
- Ajax中瀏覽器的緩存問題解決方法
- AJAX和WebService實現(xiàn)省市縣三級聯(lián)動具體代碼
- ajax 登錄功能簡單實現(xiàn)(未連接數(shù)據(jù)庫)
- AJAX和WebService實現(xiàn)郵箱驗證(無刷新驗證郵件地址是否合法)
- AJAX和三層架構(gòu)實現(xiàn)分頁功能具體思路及代碼
- 使用AJAX返回WebService里的集合具體實現(xiàn)
- AJAX獲取服務(wù)器當(dāng)前時間及時間格式輸出處理
- ajax傳遞多個參數(shù)具體實現(xiàn)
- ajax傳遞一個參數(shù)具體實現(xiàn)
- 滑輪滾動到頁面底部ajax加載數(shù)據(jù)配合jsonp實現(xiàn)探討
- jQery ajax——load()方法示例介紹
- jQuery+Ajax實現(xiàn)表格數(shù)據(jù)不同列標(biāo)題排序(為表格注入活力)
- 相關(guān)鏈接:
- 教程說明:
AJAX教程-那些年,我還在學(xué)習(xí)Ajax 學(xué)習(xí)筆記
。