ajax向后台传递数组且数组有可能为空情况

    这是一个很小的问题,平时工作中容易忽视,今天在做一个需求,需要利用ajax想后台传递两个数组,切两个数组有可能为空的情况。这里遇到了两个问题:1.ajax传递数组后台接收不了,2.当传递数组为空的时候系统空指针。

    问题1:ajax传递数组后台接收不了

    出现问题的1的原因是因为ajax的解析数组传到后台的时候为其参数名多加了一个[],其实我们在后台节后参数的时候在数组名后面加上[]也是可以的,但是这样做不妥。如下代码可以在ajax中加入traditional: true,这个就可以了,后台就可以正常接收数组。

$.ajax({
	type: "POST",
	dataType: "json",
	traditional: true,
	data: {
		id : data,
		deleteOrg : deleteArray,
		insertOrg : insertArray,
	},
	});

    问题2:当传递数组为空的时候系统空指针

    出现问题2是因为ajax向后台传递参数的时候如果数组为空会默认舍弃这个字段。解决这个问题可以在后台springmvc接收逇时候解决。如下代码设置required=false即可,当传递数组为空的时候对应字段为null。

@RequestParam(value="deleteOrg", required=false) List<String> deleteOrg
@RequestParam(value="insertOrg", required=false) List<String> insertOrg

 

转载于:https://my.oschina.net/zicheng/blog/1859432

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值