$.ajax $.get $.post使用问题总结

前端之家收集整理的这篇文章主要介绍了$.ajax $.get $.post使用问题总结前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、$.ajax()

1、$.ajax()参数详解参看:点击打开链接
2、使用注意问题:

a、ajax方法的data参数格式问题,以json对象传输时,json的key需要加“”号(url可加.action可不加),不然后台解析不了,如以下格式:(data参数会被自动转换成字符串形式,所以此时json对象被转换成json字符串,这个就是key不能不加“”的原因?)

 $.ajax({
      url: "/cluster/apply/doHandle",  contentType: "application/json",  type: "POST",  data: {@H_404_58@     "id": id,  "applyStatus":"1"  }
      success: function (result) { } 
如果定义了json对象,该对象key没有加双引号,可以使用JSON.stringify(vo)方法转换上述格式:
@H_404_58@@H_404_58@var vo = {
    	id: id applyStatus:}
 $.ajax({
     		url: "/cluster/apply/doHandle" contentType: "application/json"type: "POST"data: JSON.stringify(vo),,
@H_404_58@ } b 如果后台使用springMVC做控制层框架,可以有两种方式接收ajax传递的参数,一种是以对象接收,用对象封装json中的字段,不过确保该pojo对象的属性名和json的key名字相同,json不得传pojo中没有的字段,允许json中不必要包含pojo中的全部属性,最后在control的参数类名前面用@RequestBody修饰;另一种可以直接在control的参数列表用和json key相同名的参数进行接收。

二、$.get()和$.post()

1、$.get()和$.post()具体差异可参看上述链接
2、使用注意问题:
a、两者在编写参数时注意和$.ajax()的区别,他们两个不可以像$.ajax()一样参数可以编写成key-value的形式,即:
 $.post({
     		url:    		contentType:     		data: {
    			" " }
 } 
@H_404_58@} 这种写法是不正确的,只能写成:
$.post( {
"1"}	
@H_404_58@
 function(result) {} 
}
b、$.get()和$.post()的data参数的key,实验过加不加""都行;

三、补充

原文链接:https://www.f2er.com/ajax/160552.html

猜你在找的Ajax相关文章