使用$.ajax时的注意事项
2015-01-06 17:28
169 查看
做PHP难免接触js,我也是这样,使用ajax的时候,我比较习惯使用$.ajax({}),这种方式,因为通用性较强。有时候会较少使用js,隔一段时间后再使用,有些细节内容容易模糊不清,这一次,我又忘记多个参数时的 data的格式是怎样的,于是百度上找,发现了:
data 发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。
jquery手册描述:
data 发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。
示例:
$.ajax({ type: "POST", url: "some.php", data: "name=John&location=Boston", success: function(msg){ alert( "Data Saved: " + msg ); } });
这里data后面跟的参数可以用二种表式:一种是普通url传参的写法一样,还有一种就是写在json数组里,
上面示例data部分也可以这样写:data: {name:"John",location:"Boston"}。这二个用法有什么区别?
今天在开发中发现二者用法的细微差别。第一种我们用url传参,参数里面如果加带"&"这个符号的话,可能参数接收不到或不完整,如“ data: "name=John&location=Boston",”,
如果name的值是"john&smith"这样写可能就会有问题,我们可以用JS里面的encodeURIComponent()方法进行转义,
但如果用data: {name:"John",location:"Boston"}这种方式写的话就不需要进行转义,如果转义的话,接收的将是转义后的字符串 原文地址【http://www.cnblogs.com/tim190/archive/2010/10/20/1856523.html】
相关文章推荐
- (webservice,ajax,jmail)Tip:动态调用webservice,ajaxpro的使用要点以及使用jmail接口使用注意事项
- 使用ASP.NET AJAX的注意事项
- jquery的ajax使用注意事项
- layer组件中使用ajax注意事项
- java 中使用ajax调用后台方法注意事项
- [导入]使用ASP.NET AJAX的注意事项
- 使用Ajax提交表单的注意事项
- Ajax使用注意事项
- Html.BeginForm 与 Ajax.BeginForm 使用Html.ValidationMessage显示错误的注意事项
- Laravel5.5源码详解 -- Laravel-debugbar及使用elementUI-ajax的注意事项
- 使用ASP.NET AJAX的注意事项
- AjaxControlToolkit工具的使用实例及注意事项
- 使用 AJAX 的POST 发送数据的时候,注意的事项:
- 【ajax 提交表单】多种方式的注意事项 ,serialize()的使用
- ASP.NET AJAX里使用Update Panel需要注意的事项
- 使用ASP.NET AJAX的注意事项
- 使用ASP.NET AJAX的注意事项
- 使用ASP.NET AJAX的注意事项
- 表单提交前onclick使用reuturn时,ajax请求同步异步的一点注意事项
- 使用Ajax技术获得服务端信息时的注意事项