Ajax请求小结
参数说明
ajax请求异步刷新页面=把需要异步刷新的页面单独写成一个.cshtml进行操作
$.ajax({}); -------ajax方法。
type: ------- 类型,此处为“POST” 还有 "GET"类型。必须全部大写。View和Controller请求方式保持一致。
url: ------- 调用的Action 书写格式 /controller/action
controller为文件夹的名字,即不加后缀"controller"
data: ------- 参数,没有可以不写data这一项
success: function (sesponseTest) {} ------- 回调函数,就是当我的Action 执行完后,执行的方法。sesponseTest为Action返回的内容。
$("#txt1").val(sesponseTest); ------- 把返回的字符串赋值给文本框。
无参数GET
$.ajax({
type: "GET",
url: "/Js/GetWithoutParameter",
data: {
},
success: function () {
layer.alert("Success!");
}
});
必须指定为JsonRequestBehavior.AllowGet
```C#
public ActionResult GetWithoutParameter()
{
return Json("",JsonRequestBehavior.AllowGet);
}
有参数GET
$.ajax({
type: "GET",
url: "/Js/GetWithParameter",
data: {
"FirstName": "Liu",
"LastName":"QingYu"
},
success: function () {
layer.alert("Success");
}
});
public ActionResult GetWithParameter(string FirstName,string LastName)
{
return Json("",JsonRequestBehavior.AllowGet);
}
多参数POST与返回值处理
$.ajax({
type: "POST",
url: "/Js/PostWithParameters",
data: {
"number1": 1,
"number2":2
},
success: function (result) {
layer.alert("number1 + number2 = " + result);
}
});
[HttpPost]
public ActionResult PostWithParameters(int number1,int number2)
{
return Json(number1+ number2);
}
小结
(1)Ajax可以是POST/GET
(2)传参方式
第一种
“key”:value, “key”:value
data:{”index”:index,”name”:name….}
第二种
key:value, key:value
data:{index:index,name:name….}
第三种
“key=”+value+”&&”+
data:”index=”+index+”&&”+”name=”+name…
(3)取值
a.方法的参数列表
Public ActionResult GetData(int index,string name){…}
b.Request[“name”]
public ActionResult GetData{int index=Request[“Index”];….}
c.类对象
public ActionResult AddNews(userModel user)
{
string a=user.text1;
string b=user.text2;
}
d.从MVC封装的FormCollection容器中读取
public ActionResult AddNews(FormCollection form)
{
string a=form["text1"];
string b=form["text2"];
}
(4)其他 get方法
window.open("/Js/PostWithParameters?number1="+ 1+ "&number2=" +2);
Ajax请求小结的更多相关文章
- ajax请求响应中用window.open打开新窗口会被浏览器拦截的解决方式
一.问题描述 ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是会被浏览器给拦截了,需要用户点下. 二.问题分析 浏览器之所以拦截新开窗口是因为该操作并 ...
- Ajax请求全局配置
摘要: jQuery已经成为项目中最常见的js库,也是前端开发最喜欢使用的库.下面是在项目中封装了jQuery的Ajax,分享给大家. 代码: // ajax 请求参数 var ajaxSetting ...
- 一次ajax请求导致status为canceled的原因小记
偶然碰到一个小Bug ajax请求执行后返回了一个canceled(状态码) 但是后台却接受了参数并且执行成功0.0 刚看到这个状态的时候是一脸懵逼的.... 之前并没见过这样的状态码 经过参数确认并 ...
- AJAX学习小结
12345678910 $.ajax({ "url":"", //访问路径 "data":"", // 需要传输的数据 ...
- 一步步学习javascript基础篇(9):ajax请求的回退
需求1: ajax异步请求 url标识请求参数(也就是说复制url在新页面打开也会是ajax后的效果) ajax异步请求没问题,问题一般出在刷新url后请求的数据没了,这就是因为url没有记录参数.如 ...
- 配置Chrome支持本地(file协议)的AJAX请求
什么问题 WEB开发过程中,很多时候我们都是写一些简单的Demo,并不是开发一个完整项目,此时我们常见的操作是: 新建文件夹 新建需要的文件 在Sublime(或其他编辑器)中完成DEMO的编码 双击 ...
- JQuery使用deferreds串行多个ajax请求
使用JQuery对多个ajax请求串行执行. HTML代码: <a href="#">Click me!</a> <div></div&g ...
- ajax请求成功后打开新开窗口(window.open())被拦截的解决方法
问题:今天在做项目时需要在ajax请求成功后打开一个新的窗口,此时遇到浏览拦截了新窗口的问题,尝试在ajax 回调函数中模拟执行 click 或者 submit 等用户行为(trigger('clic ...
- 关于ajax请求,在参数中添加时间戳的必要性
之前做项目的时候,看到别人的前端ajax请求代码中,都会带有一个时间戳类型的参数,当时随便查了一下,是为了防止浏览器缓存的原因,所以也没有进行深究,每次写的时候也习惯性的带一个,最近新项目中,我发现好 ...
随机推荐
- ios开发多线程四:NSOperation多图下载综合案例
#import "ViewController.h" #import "XMGAPP.h" @interface ViewController () /** t ...
- 【9207&&b701】统计数字(NOIP2007)
问题描述 某次科研调查时得到了n个自然数,每个数均不超过1500000000 (1.5*109).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出 ...
- redisson
http://www.tuicool.com/articles/BjyeaeQ http://blog.csdn.net/csujiangyu/article/details/51005342
- Django会话cookie&session
任务描述:实现登录和退出 1.项目结构 2.源代码 urls.py from django.conf.urls import url from django.contrib import admin ...
- Android 长按事件和短按事件同时响应
在长按事件中的return false 改为return true就可以解决这个问题
- SpringMVC中跳转路径的问题
1. @RequestMapping 1)@RequestMapping既可以作用于类,也可以作用于方法 2)@RequestMapping中value值(即跳转的路径),可以加 "/&qu ...
- centos7 rabbitmq安装/配置
原文:centos7 rabbitmq安装/配置 因为RabbitMQ是由erlang实现的,所以要先安装erlang再安装rabbitMQ 1.先配置yum软件源地址EPEL(EPEL是 ...
- Erlang中的record与宏
http://www.cnblogs.com/me-sa/archive/2011/07/20/erlang0006.html 在Erlang中使用Tuple ,数据项的顺序\数量都是确定的,一旦数据 ...
- QQ欢乐豆斗地主心得体会(四):合谋赢豆
刚刚又在玩QQ欢乐斗地主,只可惜,这次不够欢乐. 本金,300万豆,运气比较好,赢到将近400万.突然,形势急转直下,一直输,一直到180多万豆.本来这一局,有硬炸在手,但是没有癞子,基本被吊打的节奏 ...
- DotNetty编写跨平台网络通信
DotNetty编写跨平台网络通信 长久以来,.Net开发人员都非常羡慕Java有Netty这样,高效,稳定又易用的网络通信基础框架.终于微软的Azure团队,使用C#实现的Netty的版本发布.不但 ...