可以通过在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";
}
``
layeropen 打开页面如何携带一个超长数组给java 后台接收

原文地址: https://www.cveoy.top/t/topic/efu6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录