Layer.open 打开页面传递超长数组给 Java 后台
使用 Layer.open 打开页面并传递超长数组给 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() {
// 右上角关闭按钮的回调函数
}
});
后台代码
@RequestMapping(value = "/test", method = RequestMethod.POST)
@ResponseBody
public String test(@RequestParam(value = "arr[]") List<Integer> arr) {
// 处理数组数据
return "success";
}
说明:
- 前端代码中,使用
data: {arr: arr}将数组传递给后台。 - 后台代码中,使用
@RequestParam(value = "arr[]")注解获取数组数据。 - 以上代码仅供参考,实际使用中需要根据具体情况进行调整。
原文地址: https://www.cveoy.top/t/topic/nPe4 著作权归作者所有。请勿转载和采集!