ajax请求的data数据格式
ajax提交data类型
一、问题来源
今天使用ajax时,发现get传data时,传递json字符串时传不过去参数,所以做了一些实验测试ajax的get和post的传递data时的不同。
二、概念
ajax有三种传递传递data的方式:
- json格式
- json字符串格式
- 标准参数模式
1.json格式
形如:
{“username”:”chen”,”nickname”:”alien”}
ajax:
$.ajax({
type:"post",
url:"/test/saveUser",
data:{"username":"chen","nickname":"alien"},
dataType:"json",
success: function(data){
console.log(data);
}
});
2.json字符串
形如:
“{“username”:”chen”,”nickname”:”alien”}” 或者JSON.stringify({“username”:”chen”,”nickname”:”alien”})
ajax:
$.ajax({
type:"post",
url:"/test/saveUser",
data:JSON.stringify({"username":"chen","nickname":"alien"}),
contentType:"json/application"
dataType:"json",
success: function(data){
console.log(data);
}
});
用此格式get请求参数传递不过去,不会把json串解析成参数
而且需要添加 contentType:”json/application”
3.标准参数模式
形如:
“username=chen&nickname=alien”
ajax:
$.ajax({
type:"post",
url:"/test/saveUser",
data:"username=chen&nickname=alien",
dataType:"json",
success: function(data){
console.log(data);
}
});
$(“#form1”).serialize() 就是把表单的数据拼成这个格式的字符串!
三、总结
post请求能用1、2、3类型传递参数
get请求能用1、3类型传递参数
$(“#form1”).serialize() 是将对应表单中的input的name和value进行拼装,最后拼成3类型的字符串
ajax请求的data数据格式的更多相关文章
- ajax请求!
ajax请求: var data ='{"useName":"'+name+'",}' $.ajax({ type:"post", url: ...
- 爬虫(八):分析Ajax请求抓取今日头条街拍美图
(1):分析网页 分析ajax的请求网址,和需要的参数.通过不断向下拉动滚动条,发现请求的参数中offset一直在变化,所以每次请求通过offset来控制新的ajax请求. (2)上代码 a.通过aj ...
- jquery发送ajax请求返回数据格式
jquery向服务器发送一个ajax请求后,可以返回多种类型的数据格式,包括:html,xml,json,text等. 1.html格式的数据 "<div class='comment ...
- jQuery Ajax请求(关于火狐下SyntaxError: missing ] after element list ajax返回json,var json = eval("("+data+")"); 报错)
$.ajax({ contentType: "application/x-www-form-urlencoded;charset=UTF-8" , type: &quo ...
- 关于ajax请求,返回json数据格式
使用servlet测试 后台数据为:返回类型没有设置(方式一) String str = "["+ "{ id:1, pId:0, name:\"可折腾的父节点 ...
- ajax请求对返回数据data的处理
1,ajax请求会根据响应头的返回数据类型对返回的数据data变量进行不同的处理 $.get("data/user-permission-submit-" + ddo.manipu ...
- PHP--------TP中的ajax请求
PHP--------TP中的ajax请求 以jQuery中的ajax为例: (1)引入jQuery 通过模板替换表示路径,我们可以自定义模板替换变量(在config中定义) /*自定义模板替换标签* ...
- ajax 请求超过了5s 还没有返回 的话 就自动取消
ajax请求时有个参数可以借鉴一下 var ajaxTimeOut = $.ajax({ url:'', //请求的URL timeout : 1000, //超时时间设置,单位毫秒 type : ' ...
- Ajax请求传递参数遇到的问题
想写个同类型的,代码未测. 什么是WebAPI?我的理解是WebAPI+JQuery(前端)基本上能完成Web MVC的功能,即:这么理解吧,WebAPI相当于Web MVC的后台部分. 接下来直接上 ...
随机推荐
- [转]How to solve SSIS error code 0xC020801C/0xC004700C/0xC0047017
本文转自:http://www.codeproject.com/Articles/534651/HowplustoplussolveplusSSISpluserrorpluscodeplus0xC B ...
- iOS:键盘弹出和收起的通知使用
介绍:不论是UITextField,还是UITextView,使用它们输入文字时都是有键盘的弹出,此时可能会挡住我们创建的一分部其他视图,此时,就需要根据键盘的高度将我们被隐藏的部分View做向上或者 ...
- 各种语言性能(CPU密集型程序)比较
都进行Fib数列计算,计算到n=40的计算时间: 注意:开始,我以为上图中的第二列就是代表C++的性能.但是现在发现,完全不正确. 如果你使用同样的抽象和同样的逻辑去实现同样的代码,C和C++的性能几 ...
- MFC 带Ribbonbar的窗口 实现全屏和取消全屏
void CMainFrame::FullScreen(){ m_wndRibbonBar.ShowWindow(SW_HIDE);//隐藏工具栏 m_wndStatusBar. ...
- 关于mysql字段名和保留字冲突的问题
建了个表,有个字段起名为key,结果insert语句报错了,说是sql不对. 原因:字段key和MySQL的保留字冲突了,当mysql的字段名和保留字冲突的时候,sql语句中的字段名需要加上反引号`` ...
- nodejs vue SyntaxError:Block-scoped declarations (let,const,function,class) not yet supported
下午在git上导入之前写的代码到本地环境,执行npm run dev报错. 在我之前的环境中是没有问题的,这个错误信息也没看懂是什么原因引起的, 猜测可能是nodejs版本太低,于是重新下载了一个wi ...
- phpcms 后台验证码不显示date() expects parameter 2 to be long
方法一: 主要在于是否开启gd库 查看办法 找到php.ini文件 搜索extension=php_gd2.dll这段代码 然后把前面的;符号去掉即可. 方法二: 关键一点是获取验证码的图片与全局变量 ...
- /dev/null 的含义和用途
/dev/null 代表空设备文件,它等价于一个仅仅写文件,全部写入它的内容都会永远丢失.而尝试从它那儿读取内容则什么也读不到. 0:表示键盘输入(stdin) 1:表示标准输出(stdout),系统 ...
- AngularJS监听DOM加载完毕
直接上代码: Module.directive('renderFinish', function ($timeout) { //renderFinish自定义指令 return { restrict: ...
- SpringMVC响应Restful风格请求404
在学习Springmvc时,使用Restful风格的url,页面提示404错误.为找到原因,编写一个简单的Restful测试用例如下: jsp页面: <a href="user/tes ...