如何在jQuery ajax的success回调中获取多个返回参数?
jQuery ajax success回调获取多个返回值的实现方法
jQuery ajax的success回调参数为固定格式,默认第一个参数是接口返回的完整数据,无法直接自定义额外参数接收返回值,你可以通过调整接口返回结构完成需求,具体实现如下:
方案1:自定义$.ajax请求场景
1. 调整后端接口返回结构
将原返回的DataTable填充数组,封装为JSON对象的一个属性,新增属性存储你需要的自定义值,返回结构示例:
{ "tableData": [ // 原有用于填充表格的JSON数组 ], "myvalue2": 12 // 你需要的页面标题ID值 }
2. 前端请求逻辑调整
$.ajax({ url: "你的接口地址", dataType: "json", // 其余你的原有配置项 success: function(res) { // 用返回的表格数据重绘DataTable dataTable.clear().rows.add(res.tableData).draw(); // 给input赋值自定义参数 $("#input").val(res.myvalue2); } });
方案2:使用DataTable自带ajax加载场景
如果你是用DataTable内置的ajax能力加载数据,可以通过监听DataTable的xhr事件提取自定义返回值:
const dataTable = $('#example').DataTable({ ajax: { url: "你的接口地址", dataSrc: "tableData" // 指定表格读取返回值的tableData字段作为数据源 }, // 其余你的DataTable原有配置 }); // 监听数据加载完成事件,提取自定义参数 dataTable.on('xhr.dt', function (e, settings, json) { if (json && json.myvalue2) { $("#input").val(json.myvalue2); } });
内容的提问来源于stack exchange,提问作者user17415815
相关产品推荐
相关产品推荐

