我讲讲脱离ASP.NET控件必备的一步,JSON和使用JQuery获取JSON吧!

高手跳过,写给学习中的人的。这篇帖子是假设你会使用JQuery(JQ这么普及,应该不至少没学过吧!真没学过以后再开帖讲罗)

什么是JSON?

来自W3School的解释:

  • JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
  • JSON 是轻量级的文本数据交换格式
  • JSON 独立于语言 *
  • JSON 具有自我描述性,更易理解

不用说的太罗嗦,直白的解释就是一段文本,可以用来表示一段结构,类似C#和JAVA的类,不过就是值都带上去了。可以看一段JSON示例:

var JSONObject= {"name":"林大叔",
"street":"福州市X区XX路88号",
"age":29,
"phone":"18933883388"};

需要调用的时候,直接:JSONObject.name,可以得出“林大叔”。

JSON的好处就是读取起来比XML快,现在基本上Ajax交互数据全靠JSON了。注意JSON中间的“名称/值”对,格式是:名称:值,是半角的冒号。

好了,JSON讲完了,单个实体的话它真的就这些内容,但是怎么用?不说怎么用的话只讲JSON不是找骂?

那就讲讲使用JQuery获取JSON吧,假设我们的数据获取地址为:api.aspx,再假设你直接访问api.aspx获取到的一串字符串就是上面我们定义的JSON。那么:

var url='api.aspx';
$.getJSON(url, function (data) {
$("#txtName").val(data.name);
$("#txtAge").val(data.age);
});

后面那个function代表获取成功后执行的函数,也就是说,当我获取数据成功后,data也就是获取到的JSON字符串,这时候直接根据定义的名称,可以取得值。

没有异步概念的同学这里要注意,由于获取数据需要时间,这里就有个异步的概念,也就是说后面那个function是等到数据返回的时候才会执行的,也就是需要等待,具体需要多久时间,看运行环境而定。

有了以上示例,大家可以发挥想像了。

比如说:以前在ASP.NET中,做个某个内容的详细页(比如说学生信息详细,原谅我用这么土的例子)。一般方法是:做一个StudentInfo.aspx页,拖几个控件,根据传入的Id,到数据库获取详细信息,然后在Page_Load的时候,将值绑定到控件。

有了以上方法后,基本上可以不用服务端控件了吧!可以全部用HTML标签。将数据呈现在某个地址里,详细页通过JQuery去取JSON数据,取到后给HTML标签赋值就好了。

至于怎么取列表数据、怎么或插入数据。这些以后再开帖说。祝学ASP.NET的同学,早日摆脱只会拖控件。

我附上做的一个例子源代码,下一次我们来讲在服务端生成JSON。

http://files.cnblogs.com/jauntlin/JSONDemo1.zip

ASP.NET不拖控件教程(1)-认识JSON的更多相关文章

  1. (八)ASP.NET自定义用户控件(1)

    http://blog.csdn.net/laodao1/article/details/5897366 ASP.NET自定义控件组件开发 第一章:从一个简单的控件谈起 起始开发ASP.NET自定义控 ...

  2. 【转】ASP.NET常用数据绑定控件优劣总结

    转自:http://www.cnblogs.com/Olive116/archive/2012/10/24/2736570.html ASP.NET常用数据绑定控件优劣总结   本文的初衷在于对Asp ...

  3. 【实战项目】【FLEX】#900 实现拖控件功能

    一.功能说明:拖控件的功能(类似FLEX,VS 里面的拖控件). 提示:大家对事件的注册和派发的说法可能不一样.因为在FLEX中和在Java中,叫法有的区别.但是本质是一样的. 注册事件  == 设置 ...

  4. ASP.NET常用数据绑定控件优劣总结

    本文的初衷在于对Asp.net常用数据绑定控件进行一个概览性的总结,主要分析各种数据绑定控件各自的优缺点,以便在实际的开发中选用合适的控件进行数据绑定,以提高开发效率. 因为这些数据绑定控件大部分都已 ...

  5. Asp.Net中ObjectDataSource控件传参绑定数据

    最近在实习,在上头交付的任务中,由于需要使用Asp.Net的ListView控件,因此必然得就使用了ObjectDataSource控件,由于在使用过程中,需要网页中的参数发送到后台后,运行该参数进行 ...

  6. [转载]ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值

    原文地址:http://www.cnblogs.com/yxyht/archive/2013/03/02/2939883.html ASP.NET中TextBox控件设置ReadOnly=" ...

  7. ASP.NET Web数据控件

    ASP.NET Web数据控件 1.数据控件简介 这包括数据源控件和格式设置控件,前者使您可以使用 Web 控件访问数据库中的数据,后者使您可以显示和操作ASP.NET 网页上的数据.  2.数据控件 ...

  8. ASP.NET让FileUpload控件支持浏览自动上传功能的解决方法

    ASP.NET的FileUpload控件默认是不支持服务端的onchange事件的,此时可以用一种变通的方法来实现这一功能. 这就需要借用客户端的onchange事件,调用__doPostBack方法 ...

  9. asp.net中Repeater控件用法笔记

    大家可能都对datagrid比较熟悉,但是如果在数据量大的时候,我们就得考虑使用 repeater作为我们的数据绑定控件了.Repeater控件与DataGrid (以及DataList)控件的主要区 ...

随机推荐

  1. Hadoop on Mac with IntelliJ IDEA - 10 陆喜恒. Hadoop实战(第2版)6.4.1(Shuffle和排序)Map端 内容整理

    下午对着源码看陆喜恒. Hadoop实战(第2版)6.4.1  (Shuffle和排序)Map端,发现与Hadoop 1.2.1的源码有些出入.下面作个简单的记录,方便起见,引用自书本的语句都用斜体表 ...

  2. PostgreSQL中 AnyElement AnyArray AnynonArray的区别与联系

    http://www.postgresql.org/docs/current/static/extend-type-system.html#EXTEND-TYPES-POLYMORPHIC 先看一个例 ...

  3. PL/pgSQL学习笔记之六

    http://www.postgresql.org/docs/9.1/static/plpgsql-declarations.html 39.3.1. 声明函数参数 传递给函数的参数被用 $1.$2等 ...

  4. 静默安装oracle11G

    1.操作系统及Oracle版本 Linux版本:CentOS release 5.5 (Final) Oracle版本:Oracle Database 11g Release 2 (11.2.0.1. ...

  5. constraint使用方法总结

    主要就是添加约束的 下面几种约束 .并 一一列举: 1.主键约束: 要对一个列加主键约束的话,这列就必需要满足的条件就是分空 由于主键约束:就是对一个列进行了约束,约束为(非空.不反复) 下面是代码  ...

  6. Codeforces Round #308 (Div. 2)B. Vanya and Books 数学

    B. Vanya and Books Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/552/pr ...

  7. poj 1845(等比数列前n项和及高速幂)

    Sumdiv Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 13959   Accepted: 3433 Descripti ...

  8. Android闹钟【复杂版】

    最近做闹钟,所以自己写了个Demo版本,这个程序是用listview单独的类来实现的,和activity类分开来实现的!这个是用数据库进行更新的,当闹钟设置后,闹钟图片变成闹钟的样子,闹钟取消后,图片 ...

  9. [AngularJS] Best Practise - Module

    Module definitions Angular modules can be declared in various ways, either stored in a variable or u ...

  10. jQuery代码性能小细节

    选择器Selector的使用 $("#id")使用id来定位DOM元素无疑是最佳提高性能方式,因为jQuery底层将直接调用本地方法document.getElementbyId( ...