jquery实现ajax,返回json数据

时间:2022-03-15 16:52:50

jquery实现ajax可以调用几种方法

jquery实现ajax,返回json数据

我经常用的是$get(url,data,callback,type)方法

其中url是异步请求的页面(可以是.ashx文件),data是参数,callback是回调函数,而type是返回数据的类型.type有xml,html,json,text等.

首先,页面引用jquery.js

在页面写ajax处理的js函数

1
2
3
4
5
6
7
8
9
10
11
12
13
function initMeeting() {
            $.get("/Common/MeetingRoom.ashx", {meetid:<%=meetId %>},function sellerList(data){
                $("#divSellerList").html(data);
            },"json");
            setTimeout("initMeeting()",20000);
        }
        function initMeeting() {
            $.get("/Common/MeetingRoom.ashx", {meetid:<%=meetId %>},function sellerList(data){
                var obj = eval( "(" + data + ")" );//转换后的JSON对象
                $("#divSellerList").html(obj.CellerList);
            },"html");
            setTimeout("initMeeting()",20000);
        }

我用的返回类型是json,这样可以返回类似类的数据类型.比如{"Name":"Sunny D.D", "Age":25}

但是在使用返回值data时,首先要转换json,通过

1
var obj = eval( "(" + data + ")" );//转换后的JSON对象

就能获得json对象.

json对象是在MeetingRoom.ashx文件里处理生成的

部分代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
public class MeetingRoom : IHttpHandler
{
 
    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        try
        {
            int meetid = XYConvert.GetInt32(context.Request.QueryString["meetid"]);
 
            string str = "";
 
            MeetingJson meetingJson = new MeetingJson();
 
            if (meetid != 0)
            {
                meetingJson.CellerList=returnCellerList(meetid);
                 
            }
            str = JsonConvert.SerializeObject(meetingJson);
            context.Response.Write(str);
        }
        catch (Exception ex) {
            context.Response.Write(ex.Message);
        }
    }
    public class MeetingJson {
        string cellerList;
 
        public string CellerList
        {
            get { return cellerList; }
            set { cellerList = value; }
        }
    }
    protected string returnCellerList(int meetid)
   {
          //省略..
   }
}

返回json数据格式最重要的是使用了JsonConvert.SerializeObject()方法.它可以将需要传递到客户端的数据打包,并序列化为字符串

而类JsonConvert在第三方dll文件中(Newtonsoft.Json.dll),引入dll就可以使用了.

注意:在.ashx页面中,想要使用Session的话,直接写context.Session["user"]是不行的,必须指定当前上下文可以使用Session,可已实现IRequiresSessionState接口,访问Session

1
2
public class MeetingRoom : IHttpHandler, IRequiresSessionState
{

在中小项目中,使用这种方式实现ajax,如果是大项目里,应该有封装更好的ajax框架

jquery实现ajax,返回json数据的更多相关文章

  1. jquery ajax返回json数据进行前后台交互实例

    jquery ajax返回json数据进行前后台交互实例 利用jquery中的ajax提交数据然后由网站后台来根据我们提交的数据返回json格式的数据,下面我来演示一个实例. 先我们看演示代码 代码如 ...

  2. 通过JQuery的&dollar;&period;ajax&lpar;&rpar;把 json 数据 post 给 PHP

    通过JQuery的$.ajax()把 json 数据 post 给 PHP时的几种情况: 无法在PHP中通过$_POST 以及 $_REQUEST 获取json数据,即 $json = $_POST[ ...

  3. PHP AJAX 返回JSON 数据

    例子:利用AJAX返回JSON数据,间接访问数据库,查出Nation 表,并用下拉列表显示 造一个外部下拉列表框 </select> JQurey代码 $(document).ready( ...

  4. ASP&period;net jQuery调用webservice返回json数据的一些问题

    之前寒假时,试着使用jQuery写了几个异步请求demo, 但是那样是使用的webform普通页面,一般应该是用 webservice 居多. 最近写后台管理时,想用异步来实现一些信息的展示和修改, ...

  5. ajax 返回json数据操作

    例子: $.ajax({ url: "<?=Url::toRoute('add-all-staff')?>", type: 'get', dataType: 'json ...

  6. ajax返回json数据示例

    前端发送请求与接收数据: $.ajax({        type : "post",        url : "/queryStudent",       ...

  7. html、css&sol;bootStrap、js&sol;Jquery、ajax与json数据交互总结

    设计个个人网站,利用CSS.JavaScript.HTML5.jQuery库和AJAX等 实现网站各功能模块,下面介绍我设计的网站各大功能模块:  个人简历模块: 包涵个人基本信息(利用CSS的flo ...

  8. Jquery&comma;ajax返回json数据后呈现到html页面的&dollar;&period;post方式。

    ------------------------------------------------------完整版------------------------------------------- ...

  9. jQuery调用WebService返回JSON数据

    相信大家都比较了解JSON格式的数据对于ajax的方便,不了解的可以从网上找一下这方面的资料来看一下,这里就不多说了,不清楚的可以在网上查一下,这里只说一下因为参数设置不当引起的取不到返回值的问题. ...

随机推荐

  1. Linux下安装JDK多种方式

    一.环境说明: 操作系统:Linux xx- -.el6.x86_64 # SMP Thu Jul :: UTC x86_64 x86_64 x86_64 GNU/Linux jdk版本:java-- ...

  2. JavaScript Module Pattern&colon; In-Depth

    2010-03-12 JavaScript Module Pattern: In-Depth The module pattern is a common JavaScript coding patt ...

  3. Adobe Dreamweaver&lpar;DW&rpar;

    下载破解版地址:http://www.frontopen.com/1179.html 详情地址:http://baike.baidu.com/link?url=8Jv88BJ-wXeyABAbYEMl ...

  4. paas架构之docker——镜像管理

    1. 镜像管理 1.1. 列出镜像 Sudo docker images 1.2. 查看镜像 Sudo docker images xxxx 1.3. 拉取镜像 Sudo docker pull ub ...

  5. &lbrack;Angular2 Router&rsqb; Lazy Load Angular 2 Modules with the Router

    Angular 2 lazy loading is a core feature of Angular 2. Lazy loading allows your application to start ...

  6. CSS3 用户界面

    CSS3用户界面 在CSS3中,新的用户界面特性包括重设元素尺寸,盒尺寸以及轮廓等. 用户界面属性: resize box-sizing outline-offset 浏览器支持 属性 浏览器支持 r ...

  7. IIS ,未能加载文件或程序集&OpenCurlyDoubleQuote;System&period;Web&period;DataVisualization&comma; Version&equals;3&period;5&period;0&period;0&comma; Culture&equals;neutral&comma; PublicKeyToken&equals;31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。

    1.解决办法:安装MSChart.exe程序 图表控件,下载附件,以管理员身份运行安装.

  8. iOS 中 Touch ID得使用方法

    iPhone 5S公布以后,iOS设备基本都有集成Touch ID.而这个功能对自己的App也是一个非常好的扩展,关于Touch ID的使用方法.大致例如以下, Swift: 引入LocalAuthe ...

  9. webpack入门教程--1

    首先说什么是webpack:Webpack 是一个前端资源加载/打包工具.它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源. 然后因为webpack有不同的版本,所以 ...

  10. 【MySQL】sort by then group by

    tb: ### 需求:根据id进行分组,找到分组内hour中最大的一项 错误写法: select id, max(hour) from tb group by id; 正确的写法: ### 需求:根据 ...