/**
* 封装数据ajax后端生成账单
*/
$("#submit").click(function () {
var list = new Array();
for (let i = 0; i < dataList.quickItemList.length; i++) {
let ele ={
itemId:"",
itemName:"",
chargeStartTime:"",
price:"",
num:""
};
ele.itemId=($('.itemId[data-index=' + i + ']').val());
ele.itemName=($('.itemName[data-index=' + i + ']').val())
ele.chargeStartTime=($('.chargeStartTime[data-index=' + i + ']').val())
if ($('.itemId[data-index=' + i + ']').val() == dataList.parkCellItemId) {
ele.price=($('.parkPrice').val());
} else {
ele.price=($('.priceList[data-index=' + i + '] option:selected').val())
}
ele.num=($('.num[data-index=' + i + ']').val())
list.push(ele);
}
var dataMap={"dataList":list,
"parkCellCode":$('.parkList option:selected').val(),
"baseRoomName":$('[name="baseRoomName"]').val(),
"cgRoomId":$('[name="cgRoomId"]').val()};
$.ajax({
type: "POST",
url: "v3/charge/bill/goQuickDeliverItems",
dataType:"json",
contentType:"application/json;charset=utf-8",
data:JSON.stringify(dataMap),
success: function(res){
}
})
});
@RequestMapping(value = "/goQuickDeliverItems", method = RequestMethod.POST)
public ModelAndView goQuickDeliverItems(@RequestBody Map<String,Object> map) {
ModelAndView mv = new ModelAndView();
log.debug(map.toString());
mv.setViewName("quickdeliveritems/quickdeliveritems_pay_center");
return null;
}
前端new Array()可以创建集合,直接var arr=[],可以创建数组。
但是new Map()创建的不是map数据结构,是es6里的一种特殊结构,无论是否序列化都无法传入后台。
前端创建map可以通过创建对象的方式实现:
var map={“a”:1,“b”:2}
通过JSON.stringify() 将JavaScript里的对象序列化为json字符串传递到后台接收