如何使用ajax
A. 怎麼使用jquery的ajax
$.ajax({
url:'請求地址',
type:'請求類型',//post或get
data:{},//數據
success:function(res){
//請求成功,res是響應的內容
},
error:function(error){
//請求失敗,error是錯誤信息
},
complete:function(){
//請求執行完成,不論失敗還是成功都會執行
}
})
B. ajax應該如何應用
首先我建議把所有技術都丟下,ajax到底做了什麼,每當get或者post一個頁面我們成為一次請求,也就是有一個頁面進入另一頁面,那麼此頁面的所有信息自然會參照上一次請求.這樣我們發現有問題產生了,一,我們請求的數據量太大,一直Web下無法實現.二,有些請求的局域我們在一些范圍內未知.好了,我想ajax就是做這件事的.他能把請求不通過一次頁面的傳遞發送過去.這里我並不同意ajax用來改善用戶體驗一說,他確實改變了用戶體驗但不一定是改善. 對於我上訴的兩個問題我將具體說明aja的應用. 不同請求固定數據.對於固定的數據採用不同請求是為了解決此固定數據非常龐大以至於無法在網路現實中實現,而且此不同請求的差異上有著連續性.比如Google MAP,對於不同的坐標請求不同的地圖的局部數據. 固定請求不同數據.對於這里的不同數據的特點在於時間上的不可知性.例如在聊天系統中我們等待別人發來的信息. 好了,我說說不合理的使用,我不建議把超鏈接和提交表單行為Ajax處理.因為他違反了我說的那兩個問題的處理,第二這種體驗逆反了我們的習慣.Web不是軟體,我們都習慣了這種數據請求的刷新導致的展緩.舉例就是我們對著相機擺POSE的時候都在等待快門咔的一聲表示照片拍攝結束,後來出來了數碼相機取消了機械相機裡面反光板上抬曝光的組建使之靜音,但是對於我們來說就很別扭了即使拍照者拍攝完成我們依然在那裡擺著POSE等待結束時的咔的一聲.後來數碼相機又開始做了一個電子的聲音咔,其目的是為了防止偷拍,但是也很好的讓被拍攝者從新找回來那種咔的體驗. 那麼,如何解釋tabs中的ajax應用呢?我對此也有一定的疑惑.【責編:snow】
C. ajax如何使用
//定義一個
var xmlHttp;
function createXMLHttpRequest(){
if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}else if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
function check(){
//1.獲取需要發送伺服器的請求參數
var username = document.getElementById("username").value;
//2.創建XMLHttpRequest對象
createXMLHttpRequest();
//3.定義url,指定發送到伺服器哪個文件
var url = "servlet/CheckServlet";
//4.打開連接,非同步模式
xmlHttp.open("post", url, true);
//5.設置請求頭信息
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
//6.回調函數,接收伺服器響應數據
xmlHttp.onreadystatechange = function (){
//8.接收伺服器端的響應數據
//判斷請求發送的狀態和HTTP狀態碼
if(xmlHttp.readyState==4&&xmlHttp.status==200){
//9.接收響應數據
var text = xmlHttp.responseText;
alert(text);
//10.根據text的值確定在頁面動態顯示相應的信息
var msg_username = document.getElementById("msg_username");
if(text=="false"){
msg_username.innerHTML="<font color='red'>否</font>";
document.getElementById("submit").disabled=true;
}else{
msg_username.innerHTML="<font color='green'>是</font>";
document.getElementById("submit").disabled=false;
}
}
}
//7.發送
xmlHttp.send("username="+username);
alert(username);
}
D. Ajax到底怎麼用
(一)在客戶端頁面寫如下代碼:
<script language="JavaScript">
<!--
function ajaxByJyking()
{
var xmlhttp_request = "";
try{
if( window.ActiveXObject )
{
for( var i = 5; i; i-- )
{
try{
if( i == 2 )
{
xmlhttp_request = new ActiveXObject( "Microsoft.XMLHTTP" );
}
else
{
xmlhttp_request = new ActiveXObject( "Msxml2.XMLHTTP." + i + ".0" );
xmlhttp_request.setRequestHeader("Content-Type","text/xml");
xmlhttp_request.setRequestHeader("Charset","utf-8"); }
break;
}
catch(e)
{
xmlhttp_request = false;
}
}
}
else if( window.XMLHttpRequest )
{
xmlhttp_request = new XMLHttpRequest();
if (xmlhttp_request.overrideMimeType)
{
xmlhttp_request.override.MimeType('text/xml');
}
}
}
catch(e)
{
xmlhttp_request = false;
}
xmlhttp_request.open('post', 'dealAjax.aspx', true);
xmlhttp_request.send(null);
xmlhttp_request.onreadystatechange = function(){
if (xmlhttp_request.readyState == 4)
{
// 收到完整的伺服器響應
document.write("yes")
}
}
}
ajaxByJyking();
//-->
</script>
E. 怎麼用AJAX
Ajax工作流程:
1.從頁面表單獲取須要的數據
2.建立到伺服器的連接
3.設置伺服器響應之後需要執行的動作
4.向伺服器發送請求
XMLHttpRequest 對象
屬性:
onreadystatechange 屬性為只讀,指定當readyState屬性改變時的事件處理句柄
readyState 屬性為只讀,返回當前的狀態,0=未初始化 1=初始化 2=發送數據
3=數據傳送中 4=完成
responseText 用字元串返回伺服器響應
responseXML 用XML返回伺服器響應,可以解析為DOM對象
status 伺服器的HTTP狀態碼,200代表成功,404文件未找到
statusText Http狀態碼的相應文本
詳解:在IE瀏覽器下 把XMLHTTPRequset實例化為一個Active對象
其他瀏覽器 把它是想為一個本地的Javascript
eg:
//創建一個XMLHttpRequest對象實例
function newXMLHttpRequest()
{//在非IE瀏覽器下創建一格XMLHttpRequest
if(window.XMLHttpRequest){
xmlHttp= new XMLHttpRequest();
}//在IE瀏覽器中創建一個XMLHttpRequest對象實例
else if(window.ActiveXObjcet){
try{//在IE較新版本中創建一個XMLHttpRequest
xmlHttp =new ActiveXObject("Msxml2.XMLHTTP");
}catch(el){
//創建ActiveXObject失敗
try{
//在IE較老版本中創建一個XMLHttpRequest
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e2){
//無法創建一個XMLHttpRequest
xmlHttp=false;
}
}
}
return xmlHttp;
}
//向伺服器發送請求
function addToCart(itemCode){
//得到用戶輸入
var itemNum=document.getElementById(itemCode).value;
//驗證用戶輸入
if(itemNum == ""|| isNaN(itemNum||itemNum<1)){
alert("請輸入一個數字");
}else{
//實例一個XMLHttpRequest對象
var xmlHttp =newXMLHttpRequest();
//當狀態被改變的時候,你可以做你想做的
xmlHttp.onreadystatechange=getReadyStateHandler(xmlHttp,addUpdate);
//設置到伺服器的連接
xmlHttp.open("post","cart.do",true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//發送請求給伺服器
xmlHttp.send("action=add&item="+itemCoke+"&count="+itemNum);
}
}
//返回一個函數,當請求完成後,將伺服器返回的XML傳遞給對應函數處理
function getReadyStateHandler(req,responseXmlHandler){
//返回一個匿名函數監聽 XMLHtmlRequest對象實例
return function(){
//如果請求的狀態是「完成」
if(req.readyState==4)
//判斷請求是否成功
if(req.status==200){
//傳遞伺服器返回的XML給處理函數
responseXmlHandler(req.responseXML);
}else{
//發生HTTP問題
alert("HTTP error"+req.status+":"+req.statusText);
}
}
}
F. jquery ajax方法怎麼使用
$.ajax({
url:"後台地址的url",
data:{
id:id
},
type:"POST",
success:function(re){
console.log(re);
}
});
G. 請問怎麼用ajax做的
Ajax一般是向後台請求數據的,你拿到數據之後,整理成你想要的格式,然後用計時器來逐個渲染到頁面上就可以了。
請求數據有兩種思路,一種是載入頁面的時候請求數據,一種是點擊事件請求數據。頁面不復雜建議載入頁面時候就去請求數據,這樣點擊的交互可能會更流暢一些。
H. jquery ajax怎麼使用
$.ajax({
//訪問地址
url:'/path/to/file',
//訪問方式,一般有GET或POST兩種
type:'defaultGET(Othervalues:POST)',
//返回的數據格式,這個是可選參數,jquery回默認判斷返回參數的類型
dataType:'default:IntelligentGuess(Othervalues:xml,json,script,orhtml)',
//發送的數據
data:{
param1:'value1',
param2:'value2'
},
})
//成功後的處理函數,res為伺服器返回的數據
.done(function(res){
console.log("success");
})
//失敗後的處理函數
.fail(function(){
console.log("error");
})
//結束後的處理函數,不管成功失敗都執行
.always(function(res){
console.log("complete");
});
I. AJAX是什麼如何在JavaScript中使用
JavaScript能流行,一個很重要的原因是AJAX技術的應用。在網頁中有很多的應用。舉兩個常見的AJAX應用的例子:
1、 在搜索中,我們輸入關鍵字時,網頁會實時展現搜索結果;這是用AJAX實現的。
2、 使用地圖時,地圖會根據用戶顯示的位置不停的更新。這也是通過AJAX實現。
那麼什麼是AJAX呢?
AJAX全稱為Asynchronous JavaScript And XML直譯就是非同步的JavaScript和XML(這里我們主要介紹下JavaScript中AJAX的應用)
通常當JavaScript向伺服器發送請求獲取數據時,伺服器會返回數據。在傳統沒有使用AJAX的網頁中,需要刷新頁面使其重新載入。而AJAX可以使網頁在不重新載入頁面的情況下對網頁的局部進行更新。(比如,當你要放大地圖的時候,你會不斷的向伺服器請求地圖當前位置的詳細信息,伺服器返回數據給你,這里我們並不需要重新載入整個頁面,不然用戶體驗就太差了。而是局部更新頁面。)
由於我不可能在這寫一個地圖這樣復雜的例子,而為了演示AJAX的使用,我借用了秒秒學的一個簡單示例:
// 簡單的AJAX舉例。
// 1: 創建請求變數
var myRequest;
// 瀏覽器的特徵檢查。
if (window.XMLHttpRequest) { //若支持,則是火狐、谷歌等瀏覽器。
myRequest = new XMLHttpRequest();
} else if (window.ActiveXObject) { // 若不支持, 則是IE瀏覽器。
myRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
// 2: 為請求添加事件處理代碼。
myRequest.onreadystatechange = function(){
console.log("匿名函數被調用!");
console.log(myRequest.readyState);
if (myRequest.readyState === 4) {
var p = document.createElement("p");
var t = document.createTextNode(myRequest.responseText);
p.appendChild(t);
document.getElementById("mainContent").appendChild(p);
}
};
// 3: 配置發送請求
myRequest.open('GET', 'simple.txt', true);
myRequest.send(null);
//....
使用AJAX主要分三部分,如示例中的
1、 創建請求的變數。
在script文件中,首先聲明XMLHttpRequest對象,這也是題主說的Ajax的核心。瀏覽器頁面能通過XMLHttpRequest對象和伺服器進行通訊。因為這個對象的創建因瀏覽器的不同而有區別。所以我們要用if語句判斷XMLHttpRequest是否存在。
2、 為請求添加事件處理代碼
創建好XMLHttpRequest對象後,就可以向伺服器發送請求了,不過我們首先處理伺服器響應的事件。當伺服器響應後會觸發myRequest對象的onreadystatechange事件。
在onreadystatechange事件中我們看到myRequest調用了readyState屬性,readyState有4個值表示目前響應所在的階段,各數值表示如下:
l 1:請求已經建立,但是還沒有發送(還沒有調用 send())。
l 2:請求已發送,正在處理中(通常現在可以從響應中獲取內容頭)。
l 3:請求在處理中;通常響應中已有部分數據可用了,但是伺服器還沒有完成響應的生成。
l 4:響應已完成;您可以獲取並使用伺服器的響應了。
我們一般只關心readyState的值為4的情況,表示響應已完成。
3、 配置發送請求
使用open方法配置請求。它有三個參數:
1、第一個參數表示用GET獲取伺服器中的數據。
2、第二個參數是一個伺服器地址,這里我們用本地的simple.txt代替,省去創建伺服器的麻煩。
3、第三個參數true表示請求是非同步的,即當請求發送後,JavaScript不會為了等待伺服器的響應而阻塞,它會繼續執行後續代碼。
配置好請求後,用send方法發送請求,這里給send傳遞的參數是null,若有其它參數需要發送,也可以傳遞給send方法。
這樣AJAX的簡單使用例子就說完了,以上示例來自教程網站秒秒學,希望對你有幫助。