ajax向後臺傳遞數組且數組有可能爲空狀況

    這是一個很小的問題,平時工做中容易忽視,今天在作一個需求,須要利用ajax想後臺傳遞兩個數組,切兩個數組有可能爲空的狀況。這裏遇到了兩個問題:1.ajax傳遞數組後臺接收不了,2.當傳遞數組爲空的時候系統空指針。javascript

    問題1:ajax傳遞數組後臺接收不了

    出現問題的1的緣由是由於ajax的解析數組傳到後臺的時候爲其參數名多加了一個[],其實咱們在後臺節後參數的時候在數組名後面加上[]也是能夠的,可是這樣作不妥。以下代碼能夠在ajax中加入traditional: true,這個就能夠了,後臺就能夠正常接收數組。java

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

    問題2:當傳遞數組爲空的時候系統空指針

    出現問題2是由於ajax向後臺傳遞參數的時候若是數組爲空會默認捨棄這個字段。解決這個問題能夠在後臺springmvc接收逇時候解決。以下代碼設置required=false便可,當傳遞數組爲空的時候對應字段爲null。ajax

@RequestParam(value="deleteOrg", required=false) List<String> deleteOrg
@RequestParam(value="insertOrg", required=false) List<String> insertOrg
相關文章
相關標籤/搜索