layeropen 打开页面如何携带一个超长数组给java 后台接收
可以通过在layer.open中使用ajax请求,将超长数组传递给后台。
示例代码:
var arr = [1, 2, 3, 4, 5, 6, 7, ...]; // 超长数组
layer.open({
type: 2,
title: '页面标题',
content: '页面地址',
btn: ['确定', '取消'],
yes: function(index, layero) {
// 获取子页面的window对象
var iframeWin = window[layero.find('iframe')[0]['name']];
// 发送ajax请求,将超长数组传递给后台
$.ajax({
url: '后台接口地址',
type: 'POST',
data: {arr: arr},
success: function(data) {
// 请求成功后的回调函数
},
error: function(xhr, status, error) {
// 请求失败后的回调函数
}
});
layer.close(index); // 关闭弹出层
},
btn2: function(index, layero) {
// 取消按钮的回调函数
layer.close(index); // 关闭弹出层
},
cancel: function() {
// 右上角关闭按钮的回调函数
}
});
然后在java后台接收数据,可以使用@RequestParam注解获取数组数据:
@RequestMapping(value = "/test", method = RequestMethod.POST)
@ResponseBody
public String test(@RequestParam(value = "arr[]") List<Integer> arr) {
// 处理数组数据
return "success";
}
``
原文地址: https://www.cveoy.top/t/topic/efu6 著作权归作者所有。请勿转载和采集!