Jquery getJSON方法詳細(xì)分析
準(zhǔn)備工作
·Customer類
public class Customer
{
public int Unid { get; set; }
public string CustomerName { get; set; }
public string Memo { get; set; }
public string Other { get; set; }
}
·服務(wù)端處理(Json_1.ashx)
Customer customer = new Customer
{ Unid=1,CustomerName="宋江",Memo="天魁星",Other="黑三郎"};
string strJson = Newtonsoft.Json.JsonConvert.SerializeObject(customer);
context.Response.Write(strJson);
(一)Jquery. getJSON
方法定義:jQuery.getJSON( url, data, callback )
通過(guò)get請(qǐng)求得到j(luò)son數(shù)據(jù)
·url用于提供json數(shù)據(jù)的地址頁(yè)
·data(Optional)用于傳送到服務(wù)器的鍵值對(duì)
·callback(Optional)回調(diào)函數(shù),json數(shù)據(jù)請(qǐng)求成功后的處理函數(shù)
function(data, textStatus) {
// data是一個(gè)json對(duì)象
// textStatus will be "success"
this; // the options for this ajax request
}
(1)一個(gè)對(duì)象
$.getJSON(
"webdata/Json_1.ashx",
function(data) {
$("#divmessage").text(data.CustomerName);
}
);
向Json_1.ashx地址請(qǐng)求json數(shù)據(jù),接收到數(shù)據(jù)后,在function中處理data數(shù)據(jù)。 這里的data的數(shù)據(jù)是一條記錄,對(duì)應(yīng)于一個(gè)customer實(shí)例,其中的數(shù)據(jù)以k/v形式存在。即以[object,object]數(shù)組形式存在。
{"Unid":1,"CustomerName":"宋江","Memo":"天魁星","Other":"黑三郎"}
所以在訪問(wèn)時(shí),以data.Property來(lái)訪問(wèn),下面以k/v循環(huán)來(lái)打印這條宋江的記錄:
$.getJSON(
"webdata/Json_1.ashx",
function(data) {
var tt="";
$.each(data, function(k, v) {
tt += k + ":" + v + "<br/>";
})
$("#divmessage").html(tt);
});
結(jié)果:
Unid:1
CustomerName:宋江
Memo:天魁星
Other:黑三郎
(2)對(duì)象數(shù)組
Ashx文件(Json_1.ashx)修改:
List<Customer> _list = new List<Customer>();
Customer customer = new Customer
{ Unid=1,CustomerName="宋江",Memo="天魁星",Other="黑三郎"};
Customer customer2 = new Customer
{ Unid = 2, CustomerName = "吳用", Memo = "天機(jī)星", Other = "智多星" };
_list.Add(customer);
_list.Add(customer2);
string strJson = Newtonsoft.Json.JsonConvert.SerializeObject(_list);
它生成的json對(duì)象的字符串是:
[{"Unid":1,"CustomerName":"宋江","Memo":"天魁星","Other":"黑三郎"},
{"Unid":2,"CustomerName":"吳用","Memo":"天機(jī)星","Other":"智多星"}]
這里可以看到做為集合的json對(duì)象不是再一條記錄,而是2條記錄,是一個(gè)[[object,object]]數(shù)組:[object,object][object,object],而每個(gè)[object,object]表示一條記錄,對(duì)應(yīng)一個(gè)Customer,其實(shí)也是k/v的形式,而這個(gè)v就是一個(gè)Customer對(duì)象,而這個(gè)k是從0開始的索引。
$.getJSON(
"webdata/Json_1.ashx",
function(data) {
$.each(data, function(k, v) {
alert(k);
});
});
這時(shí),k值為0,1……
列表json對(duì)象的方法:
$.getJSON(
"webdata/Json_1.ashx",
function(data) {
var tt = "";
$.each(data, function(k, v) {
$.each(v,function(kk, vv) {
tt += kk + ":" + vv + "<br/>";
});
});
$("#divmessage").html(tt);
});
結(jié)果:
Unid:1
CustomerName:宋江
Memo:天魁星
Other:黑三郎
Unid:2
CustomerName:吳用
Memo:天機(jī)星
Other:智多星
這里用了嵌套循環(huán),第一個(gè)循環(huán)用于從List中遍歷Customer對(duì)象,第二個(gè)循環(huán)用于從Customer對(duì)象中遍歷Customer對(duì)象的屬性,也就是k/v對(duì)。
- JQuery 獲取json數(shù)據(jù)$.getJSON方法的實(shí)例代碼
- Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法總結(jié)
- jquery $.getJSON()跨域請(qǐng)求
- jQuery+ajax中g(shù)etJSON() 用法實(shí)例
- JQuery中g(shù)etJSON的使用方法
- jQuery getJSON 處理json數(shù)據(jù)的代碼
- JQuery中的$.getJSON 使用說(shuō)明
- ie下jquery.getJSON的緩存問(wèn)題的處理方法
- jQuery中$.ajax()和$.getJson()同步處理詳解
- 用原生JavaScript實(shí)現(xiàn)jQuery的$.getJSON的解決方法
- jQuery中$.get、$.post、$.getJSON和$.ajax的用法詳解
- jQuery使用getJSON方法獲取json數(shù)據(jù)完整示例
相關(guān)文章
jquery.blockUI.js上傳滾動(dòng)等待效果實(shí)現(xiàn)思路及代碼
上傳滾動(dòng)等待效果想必大家在很多場(chǎng)合都有見(jiàn)過(guò)吧,本文將介紹jquery.blockUI.js實(shí)現(xiàn)上傳滾動(dòng)等待效果,感興趣的你可不要錯(cuò)過(guò)了哈,希望可以幫助到你2013-03-03基于JQuery實(shí)現(xiàn)相同內(nèi)容合并單元格的代碼
我們就中和下利用JQuery來(lái)和他一個(gè)table里面相同內(nèi)容的單元格,這里代碼跟大家分享下,希望對(duì)大家有用2011-01-01jquery bind(click)傳參讓列表中每行綁定一個(gè)事件
用jquey bind 點(diǎn)擊事件時(shí),傳參不注意可能會(huì)導(dǎo)致點(diǎn)擊每一行都是顯示相同內(nèi)容的情況,下面有個(gè)示例,感興趣的朋友可以參考下2014-08-08jQuery.parseJSON(json)將JSON字符串轉(zhuǎn)換成js對(duì)象
本節(jié)主要介紹了使用jQuery.parseJSON(json)將JSON字符串轉(zhuǎn)換成js對(duì)象,需要的朋友可以參考下2014-07-07jValidate 基于jQuery的表單驗(yàn)證插件
網(wǎng)上基于jQuery的表單驗(yàn)證插件已有很多,但是這個(gè)輪子我還是繼續(xù)做一個(gè),因?yàn)檫@個(gè)表單驗(yàn)證插件是從我以前的個(gè)人JS框架移值過(guò)來(lái)的(我已慢慢投入jQuery的懷抱),并且它的驗(yàn)證規(guī)則書寫方式也許會(huì)讓你眼前一亮。2009-12-12jquery拖拽效果完整實(shí)例(附demo源碼下載)
這篇文章主要介紹了jquery拖拽效果實(shí)現(xiàn)方法,詳細(xì)介紹了jQuery實(shí)現(xiàn)拖拽功能的具體步驟與相關(guān)技巧,并附代碼了demo源碼供讀者下載參考,需要的朋友可以參考下2016-01-01