MVC中前台如何向后台传递数据------$.get(),$post(),$ajax(),$.getJSON()总结
一、引言
MVC中view向controller传递数据的时候真心是一个挺让人头疼的一件事情。因为原理不是很懂只看一写Dome,按葫芦画瓢只能理解三分吧。
二、解读Jquery个Ajax函数
$.get(),$.post(),$.ajax(),$.getJSON()
1、$.get(url,[data],[callback])
参数说明
url:请求地址,MVC中一般为:“/QueryScores/Search/” (/controller/action/)
data:请求数据列表,MVC中action的参数,一定要注意这里的data是用key/value键值对的,key一定与action的参数的名称一定相同才行。
callback:请求成功后的回调函数,我们一般定义为function(str),这里的function就为回调函数,str为action的返回值。
我们举个例子:
<span style="font-size:18px;">
var item = $(":radio:checked").val();
$.get("/QueryScores/Search/", {item:item}, function (string) {
alert(string);
}); </span>
在后台是这样写的:
<span style="font-size:18px;">
public String Search(string item)
{
return "123";
}
</span>
是挺好写的是吧,如果我们想要return回来的json格式的值的时候,get方法就会局限了,这个时候就需要后面的函数了。
2、$.post(url,[data],[callback],[type])
前三个都跟上面的是一样的我就不说了,
type:请求的数据类型,可以是html,xml,json等类型,如果我们设置这个参数为json,那么返回的格式则是json格式的,如果没有设置,就和$.get()返回的格式一样,都是字符串格式的。
代码:
<span style="font-size:18px;">$.post("data.php",$("#firstName.val()"),function(data){
$("#postResponse").html(data.name);
},"json"//设置了获取数据的类型,所以得到的数据格式为json类型的
);</span>
3、$.ajax(option)
如果我们需要更加精确的参数的时候,我们就可以用到这个。
看看它的定义:
<span style="font-size:18px;">
$.ajax({
url: "ajax/ajax_selectPicType.aspx",
data:{Full:"fu"},
type: "POST",
dataType:'json',
success:CallBack,
error:function(er){
BackErr(er);}
});
</span>
我们我们可以看到它定义了url,data,type,daatatype,success,error的定义,增加了错误处理。
4、$.getJSON(url,[data],[callback])
它的获取的数据类型一定是json。
<span style="font-size:18px;"> $.getJSON("/Stu/Get/" + id, null, function (jsonObj) {
if (jsonObj.Statu == "ok")
{
$("#Id").val(jsonObj.Data.Id);
$("#Name").val(jsonObj.Data.Name);
$("#CId").val(jsonObj.Data.CId);
}
});</span>
三、总结:
在如今我们开发前台的是后,后台直接与底层的HTTPRequest本来就听烦的。JQuery既然已经分装了js,我们就可以考虑AJAX应用了,
MVC中前台如何向后台传递数据------$.get(),$post(),$ajax(),$.getJSON()总结的更多相关文章
- mvc中view与controll之间传递参数时,可以使用url进行传递
mvc中view与controller之间传递参数时,可以使用url进行传递,但是在url的地址中需要加上“id=123”这样的东西才行. 具体如代码: window.location.href = ...
- 【ASP.NET MVC】View与Controller之间传递数据
1 概述 本篇文章主要从操作上简要分析Controller<=>View之间相互传值,关于页面之间传值,如果感兴趣,可参考我另外一篇文章ASP.NET 页面之间传值的几种方式 . Co ...
- 如何在.NET MVC中使用jQuery并返回JSON数据
http://blog.csdn.net/dingxingmei/article/details/9092249 开始实践 - jQuery端 假设我们要从服务器端获取一个文章列表,并把文章条目显示在 ...
- [转]如何在.NET MVC中使用jQuery并返回JSON数据
本文转自:http://blog.sina.com.cn/s/blog_48e42dc90100xp1p.html 二.开始实践 - jQuery端 假设我们要从服务器端获取一个文章列表,并把文章条目 ...
- ASP.NET中前台如何调用后台变量
.Asp.Net中几种相似的标记符号: < %=...%>< %#... %>< % %>< %@ %>解释及用法 答: < %#... %> ...
- net中前台javascript与后台c#函数相互调用
问: 1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? 4.如何在C#中访问JavaScript函数? ...
- Asp.net中前台javascript与后台C#交互
方法一:使用Ajax开发框架,后台方法定义前添加[AjaxPro.AjaxMethod],然后就可以在前台js脚本中调用后台C#函数. 方法二:后台方法声明为public或者protected,然后前 ...
- mvc中的几个数据传递
1.ViewData对象 ViewBagData是一种字典集合数据同时属于视图基类和控制器基类的属性. 实例: //控制器 public class HomeController:Controller ...
- Asp.Net MVC中Controller与View之间传递的Model
Controller --> View 的Model 与 提交表单后 View --> Controller 的Model 不是相同的对象,即:这两个Model为不同的指针,指向不同的地址 ...
随机推荐
- Uncaught TypeError: Cannot read property 'insertAdjacentHTML' of null
在开发Ext 项目中如果遇到 Uncaught TypeError: Cannot read property 'insertAdjacentHTML' of null 这个错误,检查下renderT ...
- SharePoint 2010 设置宽度1024px
在模板页中找到 s4-workspace,设置class=”s4-nosetwidth“,然后再设置宽度为1024px:如果要居中,设置style=“margin:0 auto” 这样也会有一个问题: ...
- find用法
find - 递归地在层次目录中处理文件 总 find [path...] [expression] 描 这个文档是GNU版本 find 命令的使用手册. find 搜索目录树上的每一个文件名,它从左 ...
- DSP280x的数模转换使用
/*****************************************************************************Copyright: 2013File na ...
- 一次我们网站的web性能优化
1.Google的Web优化最佳实践 利用PageSpeed工具 对我们红酒世界网进行检测时,发现了下面的几个问题 1.Leverage browser caching 1.1.通过web.confi ...
- ostream类重载的operator<<()函数
ostream类重载了operator<<()以识别不同的类型,如: int short long unsigned int unsigned short unsigned long f ...
- linux查看端口是否已开启和查看文件数
查看端口是否开启 lsof -i:80 查看文件数 ls | wc -w
- background-clip
background-clip 用来将背景图片做适当的裁剪以适应实际需要. 语法: background-clip : border-box | padding-box | content-box | ...
- 查看linux命令类型
type type -a type type是内建变量 root@akayer-p6:~# type -a lsls 是 `ls --color=auto' 的别名ls 是 /bin/ls
- spring--注入类型--构造方法(不常用)
3.3.1.1. Constructor Injection Constructor-based DI is effected by invoking a constructor with a num ...