溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Ajax后臺(tái)success傳來(lái)json數(shù)據(jù)怎么處理

發(fā)布時(shí)間:2021-09-01 14:18:54 來(lái)源:億速云 閱讀:124 作者:小新 欄目:web開(kāi)發(fā)

這篇文章將為大家詳細(xì)講解有關(guān)Ajax后臺(tái)success傳來(lái)json數(shù)據(jù)怎么處理,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

最近在使用JQuery的ajax方法時(shí),需要返回的數(shù)據(jù)為json數(shù)據(jù),在success返回中數(shù)據(jù)處理會(huì)根據(jù)返回方式不同會(huì)采用不同的方式來(lái)生成json數(shù)據(jù)。在$.ajax方法中應(yīng)該是如何來(lái)處理的,簡(jiǎn)單進(jìn)行說(shuō)明。

首先給出要傳的json數(shù)據(jù):[{"demoData":"This Is The JSON Data"}]

1,使用普通的aspx頁(yè)面來(lái)處理

$.ajax({ 
type: "post", 
url: "Default.aspx", 
dataType: "json", 
success: function (data) { 
$("input#showTime").val(data[0].demoData); 
}, 
error: function (XMLHttpRequest, textStatus, errorThrown) { 
alert(errorThrown); 
} 
});

這里是后臺(tái)傳遞數(shù)據(jù)的代碼

Response.Clear(); 
Response.Write("[{\"demoData\":\"This Is The JSON Data\"}]"); 
Response.Flush(); 
Response.End();

這種處理的方式將傳遞過(guò)來(lái)的數(shù)據(jù)直接解析為json數(shù)據(jù),也就是說(shuō)這里的前臺(tái)js代碼可能直接把這些數(shù)據(jù)解析成json對(duì)象數(shù)據(jù),而并非字符串?dāng)?shù)據(jù),如data[0].demoData,這里就直接使用了這個(gè)json對(duì)象數(shù)據(jù)

2,使用webservice(asmx)來(lái)處理

這種處理方式就不會(huì)將傳遞過(guò)來(lái)的數(shù)據(jù)當(dāng)成是json對(duì)象數(shù)據(jù),而是作為字符串來(lái)處理的,如下代碼

$.ajax({ 
type: "post", 
url: "JqueryCSMethodForm.asmx/GetDemoData", 
dataType: "json",/*這句可用可不用,沒(méi)有影響*/ 
contentType: "application/json; charset=utf-8", 
success: function (data) { 
$("input#showTime").val(eval('(' + data.d + ')')[0].demoData); 
//這里有兩種對(duì)數(shù)據(jù)的轉(zhuǎn)換方式,兩處理方式的效果一樣 
//$("input#showTime").val(eval(data.d)[0].demoData); 
}, 
error: function (XMLHttpRequest, textStatus, errorThrown) { 
alert(errorThrown); 
} 
});

下面這里為asmx的方法代碼

public static string GetDemoData() { 
return "[{\"demoData\":\"This Is The JSON Data\"}]"; 
}

這里的這種處理方式就把傳遞回來(lái)的json數(shù)據(jù)當(dāng)成了字符串來(lái)處理的,所在就要對(duì)這個(gè)數(shù)據(jù)進(jìn)行eval的處理,這樣才能成為真正的json對(duì)象數(shù)據(jù)。

success:function(data){ 
eval(data); 
}

關(guān)于“Ajax后臺(tái)success傳來(lái)json數(shù)據(jù)怎么處理”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI