Ajax無刷新Url提交頁面
更新時(shí)間:2010年10月26日 22:48:48 作者:
Ajax從流行到現(xiàn)在,已經(jīng)不算是什么新鮮的技術(shù)了
尤其是在Jquery,porotype,Ext等框架流行之后,大量簡(jiǎn)化的代碼可說是為程序員帶來了福音,
從繁重的代碼工作之中解脫出來,輕易的就可以實(shí)現(xiàn)過去書寫復(fù)雜的功能。
不過有利有弊,到如今,習(xí)慣了使用各種框架,而很少自己書寫內(nèi)部源碼的程序員們,還有幾個(gè)記得Ajax那其實(shí)并不算復(fù)雜的基本代碼呢?
今天,為了不遺忘當(dāng)初的熱忱,我把這基礎(chǔ)的代碼再貼出來,給自己回顧一下。
1。對(duì)于Ajax來說,判斷瀏覽器的類別是一個(gè)重復(fù)而且毫無新意的工作,這段代碼完全可以封裝起來,隨意調(diào)用。
function xmlhttp()
{
var A=null
try
{
A=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
A=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(oc)
{
if(typeof XMLHttpRequest!="Undefined")
{
A=new XMLHttpRequest();
}
}
}
return A;
}
不解釋了,反正就算不懂,直接復(fù)制過去用也是沒有問題的。
2。接下來是提交Url的代碼。
整個(gè)過程其實(shí)大同小異,大部分代碼其實(shí)都可以封裝起來,只要將參數(shù)傳入,再獲取結(jié)果就可以了。
function Ajax(url)
{
var XmlHttp=new xmlhttp();
try
{
XmlHttp.open("POST",url,true);
var result=SendUrl();
}
catch(e)
{
alert(e);
}
}
3.
function SendUrl()
{
XmlHttp.send();
XmlHttp.onreadystatechange=function()
{
if(XmlHttp.readyState==4 && XmlHttp.status==200)
{
var result=XmlHttp.responseText;
return result;
}
}
}
從繁重的代碼工作之中解脫出來,輕易的就可以實(shí)現(xiàn)過去書寫復(fù)雜的功能。
不過有利有弊,到如今,習(xí)慣了使用各種框架,而很少自己書寫內(nèi)部源碼的程序員們,還有幾個(gè)記得Ajax那其實(shí)并不算復(fù)雜的基本代碼呢?
今天,為了不遺忘當(dāng)初的熱忱,我把這基礎(chǔ)的代碼再貼出來,給自己回顧一下。
1。對(duì)于Ajax來說,判斷瀏覽器的類別是一個(gè)重復(fù)而且毫無新意的工作,這段代碼完全可以封裝起來,隨意調(diào)用。
復(fù)制代碼 代碼如下:
function xmlhttp()
{
var A=null
try
{
A=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
A=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(oc)
{
if(typeof XMLHttpRequest!="Undefined")
{
A=new XMLHttpRequest();
}
}
}
return A;
}
不解釋了,反正就算不懂,直接復(fù)制過去用也是沒有問題的。
2。接下來是提交Url的代碼。
整個(gè)過程其實(shí)大同小異,大部分代碼其實(shí)都可以封裝起來,只要將參數(shù)傳入,再獲取結(jié)果就可以了。
復(fù)制代碼 代碼如下:
function Ajax(url)
{
var XmlHttp=new xmlhttp();
try
{
XmlHttp.open("POST",url,true);
var result=SendUrl();
}
catch(e)
{
alert(e);
}
}
3.
復(fù)制代碼 代碼如下:
function SendUrl()
{
XmlHttp.send();
XmlHttp.onreadystatechange=function()
{
if(XmlHttp.readyState==4 && XmlHttp.status==200)
{
var result=XmlHttp.responseText;
return result;
}
}
}
您可能感興趣的文章:
- pushState、replaceState、onpopstate 實(shí)現(xiàn)Ajax頁面的前進(jìn)后退刷新
- 使用Yii整合的pjax(pushstate+ajax)實(shí)現(xiàn)無刷新加載頁面
- 使用ajax和history.pushState無刷新改變頁面URL示例
- 使用ajax實(shí)現(xiàn)無刷新改變頁面內(nèi)容和地址欄URL
- 基于iframe實(shí)現(xiàn)類似于ajax的頁面無刷新
- ajax頁面無刷新 IE下遭遇Ajax緩存導(dǎo)致數(shù)據(jù)不更新的問題
- JS+Ajax+Jquery實(shí)現(xiàn)頁面無刷新分頁以及分組 超強(qiáng)的實(shí)現(xiàn)
- PHP Ajax實(shí)現(xiàn)頁面無刷新發(fā)表評(píng)論
- PHP Ajax實(shí)現(xiàn)頁面無刷新發(fā)表評(píng)論
- pushState實(shí)現(xiàn)Ajax無刷新頁面切換
相關(guān)文章
Ajax創(chuàng)建XMLHttp對(duì)象的完美兼容性代碼
Ajax創(chuàng)建XMLHttp對(duì)象的完美兼容性代碼,需要的朋友可以參考下。2011-11-11淺析巧用Ajax的beforeSend提高用戶體驗(yàn)
下面小編就為大家?guī)硪黄獪\析巧用Ajax的beforeSend提高用戶體驗(yàn)。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考2016-04-04AJAX實(shí)現(xiàn)無刷新檢測(cè)用戶名功能
這篇文章主要為大家詳細(xì)介紹了AJAX實(shí)現(xiàn)無刷新用戶名檢測(cè)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06不使用XMLHttpRequest對(duì)象實(shí)現(xiàn)Ajax效果的方法小結(jié)
這篇文章主要介紹了不使用XMLHttpRequest對(duì)象實(shí)現(xiàn)Ajax效果的方法,結(jié)合具體實(shí)例形式分析了三種不使用XMLHttpRequest對(duì)象實(shí)現(xiàn)Ajax功能的相關(guān)實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-07-07利用AjaxControlToolkit實(shí)現(xiàn)百度搜索時(shí)的下拉列表提示詳細(xì)步驟
AjaxControlToolkit是一組控件的集合,可以實(shí)現(xiàn)自動(dòng)補(bǔ)充文本框,點(diǎn)擊文本框彈出日歷,加水印等Ajax效果等等,感興趣的朋友可以了解下啊,或許本文對(duì)你學(xué)習(xí)ajax有所幫助2013-02-02簡(jiǎn)單實(shí)現(xiàn)Ajax無刷新分頁效果
這篇文章主要為大家詳細(xì)介紹了簡(jiǎn)單實(shí)現(xiàn)Ajax無刷新分頁效果的代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05AJAX實(shí)現(xiàn)跨域的三種方法(代理,JSONP,XHR2)
這篇文章主要介紹了AJAX實(shí)現(xiàn)跨域的三種方法(代理,JSONP,XHR2)的相關(guān)資料,需要的朋友可以參考下2016-03-03