本文转自:http://blog.sina.com.cn/s/blog_48e42dc90100xp1p.html

二、开始实践 - jQuery端

假设我们要从服务器端获取一个文章列表,并把文章条目显示在页面中,而加载的过程要用ajax实现,即实现异步加载。那么我们先来完成jquery向服务器端发出ajax请求,并根据服务器响应来重组DOM从而实现文章在页面上显示。这里,和.NET MVC没有多大关系。具体的jquery代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
$.ajax({
url: '/cgi/getArtical', //请求的某个action的地址
datatype: "json", //只有指定为json下面才可以直接用返回的json数据,否则要转化
type: 'post',
success: function (data) {
PutArtical(data); //该函数中处理json格式的文章数据data;
HideTip(); //处理完文章后关闭加载提示
},
beforeSend: function(){
LoadTip("正在加载文章"); //这里是加载过程中的等待提示,可以自己定义
}
})

这是一个普通的jquery中ajax调用的例子,需要注意的是datatype最好指定为json,因为下面服务器端是直接返回json对象的,这样success中返回的数据就直接是json对象,可以直接使用;如果不这样指定的话也行,不过在success函数中必须先把data转换成json对象,转换方法是eval_r('('+data+')')。

三、开始实践 - .NET MVC服务器端

上面我们可以让jquery来调用action了,那么我们接下来就来写这个action,并把结果以json的格式返回给jquery,具体代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
/// <summary>
/// 返回文章列表
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
[HttpPost]
public ActionResult getArtical()
{
List<Artical> artList = new List<Artical>();
artList.Add(new Artical(){ Id = 1,Title = "测试文章1" });
artList.Add(new Artical(){ Id = 2,Title = "测试文章2" });
return Json(artList); //MVC中可以用Json函数来将C#对象序列化成JSON对象
}

这个和以前普通的服务器代码不同的是最后我们可以非常方便地用Json函数将C#对象序列化成JSON对象并返回给jquery,代码十分简洁。

四、总结

在.NET MVC中使用jquery更加方便,jquery端只要我们指定返回的数据类型(datatype)为json就可以方便地使用服务器返回的json数据;服务器端我们可以用Json函数非常方便地将c#对象序列化成json对象而不必写一大堆的Response.Write("......")。本文到此结束!

[转]如何在.NET MVC中使用jQuery并返回JSON数据的更多相关文章

  1. 如何在.NET MVC中使用jQuery并返回JSON数据

    http://blog.csdn.net/dingxingmei/article/details/9092249 开始实践 - jQuery端 假设我们要从服务器端获取一个文章列表,并把文章条目显示在 ...

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

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

  3. Spring MVC 中 AJAX请求并返回JSON

    一.以ModelAndView的方式返回 先看下JavaScript代码: /** * 保存-同步(版本控制库) */ function saveSynchronizedVcHorse(obj) { ...

  4. Jquery,ajax返回json数据后呈现到html页面的$.post方式。

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

  5. jquery $.post 返回json数据

    $(function () { $("#prompt").hide(); $("#searchIpt").keyup(function () { var key ...

  6. asp.net中webservice与android的json数据交互方式设置

    一 .服务器端设置 1.修改web.config 在web.config里面的的system.Web节点添加 <webServices> <protocols> <add ...

  7. asp.net mvc中使用jquery H5省市县三级地区选择控件

    地区选择是项目开发中常用的操作,本文讲的控件是在手机端使用的选择控件,不仅可以用于实现地区选择,只要是3个级别的选择都可以实现,比如专业选择.行业选择.职位选择等.效果如下图所示: 附:本实例asp. ...

  8. Spring MVC Controller与jquery ajax请求处理json

    在用 spring mvc 写应用的时候发现jquery传递的[json数组对象]参数后台接收不到,多订单的处理,ajax请求: "}]}]} $.ajax({ url : url, typ ...

  9. 使用jQuery解析JSON数据(由ajax发送请求到php文件处理数据返回json数据,然后解析json写入html中呈现)

    在上一篇的Struts2之ajax初析中,我们得到了comments对象的JSON数据,在本篇中,我们将使用jQuery进行数据解析. 我们先以解析上例中的comments对象的JSON数据为例,然后 ...

随机推荐

  1. Algorithms - Bucket sort

    印象 图1 将元素分布在桶中 图2 元素在每个桶中排序 思想 桶排序将数组分到有限数量的桶子里.每个桶子再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序). 分析 时间复杂度: ...

  2. ASP.NET MVC之"重定向/页面跳转"(关键词RedirectToAction,Redirect)

    MVC5 API(官方) 1.RedirectToRouteResult RedirectToAction(string actionName); RedirectToRouteResult Redi ...

  3. metasploit 读书笔记-信息收集

    三、信息收集 被动信息收集 在不接触目标系统时进行的信息收集,包括使用工具Yeti、Whois (1)Whois msf > whois secmaniac.net (2)Netcraft:fi ...

  4. 以证书的方式登录ssh

    常常要登录多台Linux服务器,过去在Windows下使用SecureCRT,比较省心,配置还可以放到云盘,实时同步.现在改用MAC貌似就没有那么好用的东西了,每次ssh命令登录都需要输入密码,很烦. ...

  5. How to solve multi-version conflict of OpenCV or PCL on ROS kinetic?

    Solve multi-version conflict prepare: make sure you know which version is in your machine: dpk-confi ...

  6. Cannot find module 'webpack/bin/config-yargs'

    1.版本不兼容 npm install webpack-dev-server@1.15.0 -g

  7. 牛客寒假算法基础集训营4 F Applese 的大奖

    链接:https://ac.nowcoder.com/acm/contest/330/H来源:牛客网 Applese 和它的小伙伴参加了一个促销的抽奖活动,活动的规则如下:有一个随机数生成器,能等概率 ...

  8. anglarJs前端控制器的继承

    继承就是将相关内容进行抽离,将公共部分进行分离,然后被其他模块继承就可以实现多用 例如抽离分页部分: //品牌控制层 app.controller('baseController' ,function ...

  9. EA888发动机系列

    EA888发动机是一个发动机系列,有很多型号,比如从二代机开始,二代机叫做Evolution 2,简称EVO2,分别有CEA:1.8T 横置:CCU:1.8T 纵置:CGM:2.0T横置,CRH:2. ...

  10. C语言变量:名称、地址和值

    变量的名称.地址和变量的值之间关系密切. 我们可以认为变量有两个属性:名称和值(其他属性暂不讨论): 计算机编译和加载后也认为变量有两个属性:地址和值.地址就是变量在计算机内部的名称. 许多语言中地址 ...