Jquery getJSON方法详细分析 - Web前端
作者:98wpeu发布时间:2026-10-02分类:网页前端技术浏览:13
准备工作
·customer类
复制代码 代码如下:
public class Customer
{
public int Unid { get; set; }
public string CustomerName { get; set; }
public String Memo { get; set; }
public string Other { get; set; }
}
·服务端处理(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 )
通过get请求得到json数据
·url用于提供json数据的地址页
·data(Optional)用于传送到服务器的键值对
·callback(Optional)回调函数,json数据请求成功后的处理函数
复制代码 代码如下:
function(data, textStatus) {
// data是一个JSON对象
// textStatus will be "success"
this; // the options for this Ajax request
}
(1)一个对象
复制代码 代码如下:
$.getJSON(
"WEBdata/Json_1.ashx",
function(data) {
$("#divmessage").text(data.CustomerName);
}
);
向Json_1.ashx地址请求json数据,接收到数据后,在function中处理data数据。 这里的data的数据是一条记录,对应于一个customer实例,其中的数据以k/v形式存在。即以[object,object]数组形式存在。
{"Unid":1,"CustomerName":"宋江","Memo":"天魁星","Other":"黑三郎"}
所以在访问时,以data.property来访问,下面以k/v循环来打印这条宋江的记录:
复制代码 代码如下:
$.getJSON(
"webdata/Json_1.ashx",
function(data) {
var tt="";
$.each(data, function(k, v) {
tt += k + ":" + v + "<br/>";
})
$("#divmessage").html(tt);
});
结果:
Unid:1
CustomerName:宋江
Memo:天魁星
Other:黑三郎
(2)对象数组
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 = "天机星", Other = "智多星" };
_list.Add(customer);
_list.Add(customer2);
string strJson = Newtonsoft.Json.JsonConvert.SerializeObject(_list);
它生成的json对象的字符串是:
[{"Unid":1,"CustomerName":"宋江","Memo":"天魁星","Other":"黑三郎"},
{"Unid":2,"CustomerName":"吴用","Memo":"天机星","Other":"智多星"}]
这里可以看到做为集合的json对象不是再一条记录,而是2条记录,是一个[[object,object]]数组:[object,object][object,object],而每个[object,object]表示一条记录,对应一个Customer,其实也是k/v的形式,而这个v就是一个Customer对象,而这个k是从0开始的索引。
复制代码 代码如下:
$.getJSON(
"webdata/Json_1.ashx",
function(data) {
$.each(data, function(k, v) {
alert(k);
});
});
这时,k值为0,1……
列表json对象的方法:
复制代码 代码如下:
$.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);
});
结果:
Unid:1
CustomerName:宋江
Memo:天魁星
Other:黑三郎
Unid:2
CustomerName:吴用
Memo:天机星
Other:智多星
这里用了嵌套循环,第一个循环用于从List中遍历Customer对象,第二个循环用于从Customer对象中遍历Customer对象的属性,也就是k/v对。
相关推荐
- jquery实现select选中行、列合计示例 - Web前端
- 在jquery boxy中添加百度地图坐标拾取注意流程 - Web前端
- jquery新的绑定事件机制on方法的使用方法 - Web前端
- jQuery防止click双击多次提交及传递动态函数或多参数 - Web前端
- jQuery实现回车键(Enter)切换文本框焦点的代码实例 - Web前端
- 使用JS或jQuery模拟鼠标点击a标签事件代码 - Web前端
- jquery判断小数点两位和自动删除小数两位后的数字 - Web前端
- jQuery的3种请求方式$.post,$.get,$.getJSON - Web前端
- Jquery实现自定义弹窗示例 - Web前端
- jquery分页对象使用示例 - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 4【第六章】Foundation之按钮和下拉功能 - Web前端
- 5基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 6jQuery编写widget的一些技巧分享 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 9在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


