关于Ajax传递多参数到SpringMVC控制器方法的问题(已解决)

在前端用ajax实现传递多个参数的方法,可以一个表单对象,多个其他类型参数,或多个对象亦同理。大概步骤为
1.把表单序列化后转成json对象

var formDate =  $(form).serialize();

2.写个把序列化后的数据转换成json对象的方法

$.fn.serializeJson = function() {
	var serializeObj = {};
	var array = this.serializeArray();
	$(array).each(
	   function() {
		if (serializeObj[this.name]) {
		  if ($.isArray(serializeObj[this.name])) {
				serializeObj[this.name].push(this.value);
			} else {
	            serializeObj[this.name] = 
	            [serializeObj[this.name],this.value ];
			}
			} else {
				serializeObj[this.name] = this.value;
			}
			});
				return serializeObj;
			};

3.得到{键:值}这种类型的数据

var data = formData.serializeJson();

4.创建一个对象把表单信息和数组封起来

var object = {};
object.property1= data;
object.property2 = data2;
object.property3 = data3
......

5.ajax发送请求加上

data : JSON.stringify(object),
contentType: "application/json",  

6.建个类封装要传递的参数

7.springmvc后台接收,用@RequestBody标记方法入参,入参对象为封装参数的类

@RequestMapping(value="/test",method = RequestMethod.POST)
@ResponseBody
public Object updateEnterprise(@RequestBody Object object){
		//其中Object为新建的类,
		//用来封装前台要传递的数据的一个类

		return new HashMap<String, String>();
	}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值