serialize()序列化表單元素爲字符串,提交地址欄那種的數據格式。
serializeArray()序列化表單元素爲JSON數據。
獲取表單元素提交,包含多個重複name的。提交如出現415錯誤,在ajax中添加contentType即可,提交出現400錯誤是沒有對數據做轉換,使用JSON.stringify()轉換格式即可
$("#submit").click(function () {
var cprForm = $("#cprForm").serializeArray()
var objs = []
$.each(cprForm,function (i,n) {
var obj = {}
obj[n.name]=n.value
objs.push(obj)
})
var data = JSON.stringify(objs)
$.ajax({
type:'post',
url:'/trainings/tutorErp',
data:data,
contentType:'application/json',
success:function () {
console.log("ok")
}
})
})
用此方法獲取表單數據格式如下
var cprForm = $("#cprForm").serializeArray()
這種數據對後臺處理不便,對數據進一步處理,數據格式如下,後臺用@RequestBody List<Map>接受處理數據
var objs = []
$.each(cprForm,function (i,n) {
var obj = {}
obj[n.name]=n.value
objs.push(obj)
})