MVC4与JSON交互的知识总结
一:jquery传递JSON给MVC4后台
1.JSON传递单个参数给Controller某个Action方法
[前台js]
$(document).ready(function () {
var postData = { userId: 4 };
var url = "@Url.Action("GetUserName")";
$.ajax({
async: false,
type: "POST",
url: url,
data: postData,
cache: false,
global: false,
dataType: 'json',
success: function (data) {
}
});
});
[后台Controller:]
public ActionResult GetUserName(int userId)
{
...
}
2.JSON传递整型数组给Action
[前台js]
$(document).ready(function () {
var postData = [];
postData.push({ name: "list_UserId", value: 1 });
postData.push({ name: "list_UserId", value: 2 });
postData.push({ name: "list_UserId", value: 3 });
var url = "@Url.Action("GetUserNameList")";
$.ajax({
async: false,
type: "POST",
url: url,
data: postData,
cache: false,
global: false,
dataType: 'json',
success: function (data) {
}
});
});
[Action]
public ActionResult GetUserNameList(List<int> list_UserId)
{
.....
}
3.JSON传递单个对象参数给Action
[前台js]
$(document).ready(function () {
var postData = [];
postData.push({ name: "user.userId", value: 1 });
postData.push({ name: "user.userName", value: "小东" });
postData.push({ name: "user.desc", value: "json高手" });
var url = "@Url.Action("AddUser")";
$.ajax({
async: false,
type: "POST",
url: url,
data: postData,
cache: false,
global: false,
dataType: 'json',
success: function (data) {
}
});
});
[Action]
public ActionResult AddUser(UserObj user)
{
....
}
4.JSON传递多个参数给Action
[前台js]
$(document).ready(function () {
var postData = [];
postData.push({ name: "list_UserId", value: 1 });
postData.push({ name: "list_UserId", value: 2 });
postData.push({ name: "list_UserId", value: 3 });
postData.push({ name: "list_roleName", value: "系统管理员" });
postData.push({ name: "list_roleName", value: "部门经理" });
var url = "@Url.Action("GetUsersAndRoles")";
$.ajax({
async: false,
type: "POST",
url: url,
data: postData,
cache: false,
global: false,
dataType: 'json',
success: function (data) {
}
});
});
[Action]
public ActionResult GetUsersAndRoles(List<int> list_UserId, List<string> list_roleName)
{
...
}
二:MVC4后台返回JSON给JS前端作处理:
1.返回List集合对象
[前端js]
$(document).ready(function () {
var postData = [];
postData.push({ name: "list_UserId", value: 1 });
postData.push({ name: "list_UserId", value: 2 });
postData.push({ name: "list_UserId", value: 3 });
var url = "@Url.Action("GetUserObjList")";
$.ajax({
async: false,
type: "POST",
url: url,
data: postData,
cache: false,
global: false,
dataType: 'json',
success: function (data) {
//将获取user集合初始化下拉框列表
var options_List = '<option value="">--请选择用户--</option>';
$.each(data, function (i, user) {
options_List += "<option value='" + user.userId + "'>" + user.userName + "</option>";
});
$('#userList').html(options_List);
}
});
});
[后台action]
public ActionResult GetUserObjList(List<int> list_UserId)
{
UserObj obj1 = new UserObj();
obj1.userId = ;
obj1.userId = ;
List<UserObj> userList = new List<UserObj>();
userList.Add(new UserObj{userId = , userName = "小东", desc = "js高手"});
userList.Add(new UserObj { userId = , userName = "小明", desc = "json高手" });
userList.Add(new UserObj { userId = , userName = "小华", desc = "jquery高手" });
JsonResult jt = Json(userList.ToArray(), JsonRequestBehavior.AllowGet);
jt.ContentType = "text/html";
return jt;
}
三:最后总结:
1.无论传递json还是后台返回json,所以action无论参数有多少,参数的类型是什么,在http中都是以键值方式作为一个整包来处理。
MVC4与JSON交互的知识总结的更多相关文章
- 项目ITP(四) javaweb http json 交互 in action (服务端 spring 手机端 提供各种工具类)勿喷!
前言 系列文章:[传送门] 洗了个澡,准备写篇博客.然后看书了.时间 3 7 分.我慢慢规律生活,向目标靠近. 很喜欢珍惜时间像叮当猫一样 正文 慢慢地,二维码实现签到将要落幕了.下篇文章出二维码实 ...
- [BS-12] JSON的基础知识--百科
JSON的基础知识--百科 http://baike.baidu.com/view/136475.htm
- SpringMVC详解(六)------与json交互
Json(JavaScript Object Notation),它是一种轻量级数据交换格式,格式简单,易于读写,目前使用特别广泛.那么这篇博客我们主要谈谈在 SpringMVC 中,如何对 json ...
- SpringMVC框架五:图片上传与JSON交互
在正式图片上传之前,先处理一个细节问题: 每一次发布项目,Tomcat都会重新解压war包,之前上传过的图片会丢失 为了解决这个问题:可以不在Tomcat下保存图片,而是另找一个目录. 上传图片: & ...
- springMVC的高级数据绑定,以及json交互,全局异常配置,
一.窄化请求映射 1.在class上添加@RequestMapping(url)指定通用请求前缀, 限制此类下的所有方法请求url必须以请求前缀开头,通过此方法对url进行分类管理. 如下: @Con ...
- SpringMVC之JSON交互
#什么是json? json是一种用于储存数据格式,是js脚本语言的子集. #json的作用? 它可以传递对象.数组等数据结构.如果是单个数据,则要用数组,不用对象,因为对象都是键值对的 方式去存储, ...
- springmvc实现json交互 -requestBody和responseBody
json数据交互 1.为什么要进行json数据交互 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便. 比如:webservice接口,传输json数据. 2. ...
- Ajax json交互和SpringMVC中@RequestBody
Ajax json交互和SpringMVC中@RequestBody 标签: 背景 自己提供出去得接口中参数设置为@RequestBody VipPromotionLog vipPromotionLo ...
- SpringMVC-05 Json交互处理
SpringMVC-05 Json交互处理 Json 1.什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别 ...
随机推荐
- 自动换行 lable换行 div换行 span换行 label换行
label word-break: break-all; white-space: normal;
- ibatis.net 中SqlMaps的xml文件的例子
<?xml version="1.0" encoding="utf-8" ?> <!--=========================== ...
- [C++][数据结构]队列(queue)的实现
对于队列的定义,前人之述备矣. 队列的实现方法与栈非常相似.我直接在我实现的那个栈的代码上加了一点东西,全局替换了一些标识符,就实现了这个队列. 我实现的是一个queue<value>容器 ...
- [MVC学习笔记]5.使用Controller来代替Filter完成登录验证(Session校验)
之前的学习中,在对Session校验完成登录验证时,通常使用Filter来处理,方法类似与前文的错误日志过滤,即新建Filter类继承ActionFilterAttribute类,重写On ...
- 移动WEB前端开发资源整合
meta篇 1.视窗宽度 <meta name="viewport" content="width=device-width,initial-scale=1.0,m ...
- hdu 5073
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5073 思路:一开始忘了排序,wa了好几发...选择区间长度为N - K的连续的数, 然后其余的K个数都 ...
- vaadin_demo
简介:主要一个登陆界面,登陆后跳转到主界面: 主界面功能是点新增,新增人员数据会保存到显示列表中: 一个很简单的demo 下面是截图
- JavaScript预解析1
var 不一定是用来定义局部变量的 jscript的全局变量和局部变量的分界是这样的: 过程体(包括方法function,对象Object o ={})外的所有变量不 ...
- 单例模式双重检查锁(DCL)问题
单例模式DoubleCheck 锁问题 先贴代码 public class DoubleCheckSingleton { private static DoubleCheckSingleton ins ...
- Leetcode Construct Binary Tree from Inorder and Postorder Traversal
Given inorder and postorder traversal of a tree, construct the binary tree. Note:You may assume that ...