html中的异步请求数据格式,解决layui中table异步数据请求不支持自定义返回数据格式的问题...
使用版本 layui-v2.3.0
修改:
打开layui中table.js源码
在 Class.prototype.pullData 这个方法定义内部
//获得数据
Class.prototype.pullData = function(curr, loadIndex){
var that = this
,options = that.config
,request = options.request
,response = options.response
,sort = function(){
if(typeof options.initSort === 'object'){
that.sort(options.initSort.field, options.initSort.type);
}
};
that.startTime = new Date().getTime(); //渲染开始时间
if(options.url){ //Ajax请求
var params = {};
params[request.pageName] = curr;
params[request.limitName] = options.limit;
//参数
var data = $.extend(params, options.where);
if(options.contentType && options.contentType.indexOf("application/json") == 0){ //提交 json 格式
data = JSON.stringify(data);
}
$.ajax({
type: options.method || 'get'
,url: options.url
,contentType: options.contentType
,data: data
,dataType: 'json'
,headers: options.headers || {}
,success: function(res){
// 加入这部分!!!
// 临时解决layui的table组件中response选项不支持多层级获取接口数据的方法
// ----------------开始---------------------
if (typeof options.responseHandler == "function") {
res = options.responseHandler(res);
}
// ----------------结束---------------------
if(res[response.statusName] != response.statusCode){
that.renderForm();
that.layMain.html('
');
} else {
that.renderData(res, curr, res[response.countName]), sort();
options.time = (new Date().getTime() - that.startTime) + ' ms'; //耗时(接口请求+视图渲染)
}
loadIndex && layer.close(loadIndex);
typeof options.done === 'function' && options.done(res, curr, res[response.countName]);
}
,error: function(e, m){
that.layMain.html('
');
that.renderForm();
loadIndex && layer.close(loadIndex);
}
});
} else if(options.data && options.data.constructor === Array){ //已知数据
var res = {}
,startLimit = curr*options.limit - options.limit
res[response.dataName] = options.data.concat().splice(startLimit, options.limit);
res[response.countName] = options.data.length;
that.renderData(res, curr, options.data.length), sort();
typeof options.done === 'function' && options.done(res, curr, res[response.countName]);
}
};
使用:
在建立table的时候
加入
responseHandler: function (res) {
// 可进行数据操作
return {
"count": res.data.count,
"data": res.data.companyList,
"code": res.code == 200 ? 0 : -1 //code值为200表示成功
};
},
以上这篇解决layui中table异步数据请求不支持自定义返回数据格式的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
html中的异步请求数据格式,解决layui中table异步数据请求不支持自定义返回数据格式的问题...相关推荐
- button layui 点击事件_解决layui中的form表单与button的点击事件冲突问题
解决layui中的form表单与button的点击事件冲突问题 layui的form表单位置和button标签的位置重合,会使得button的click事件得不到响应,如图: 蓝色底为form的位置, ...
- 解决layui的table数据重载reload where参数会保留上次条件的问题
解决layui的table数据重载reload where参数会保留上次条件的问题 原 table.render({......... });// 监听搜索操作 form.on('submit(dat ...
- Django框架深入了解_05 (Django中的缓存、Django解决跨域流程(非简单请求,简单请求)、自动生成接口文档)(二)
二.跨域: 回到顶部 跨域知识介绍: 点我以前博客 跨域解决方法:CORS:跨域资源共享 CORS请求分类(简单请求和非简单请求) 简单请求(simple request):只需要在头信息之中增加一个 ...
- Django框架深入了解_05 (Django中的缓存、Django解决跨域流程(非简单请求,简单请求)、自动生成接口文档)(一)
阅读目录 一.Django中的缓存: 前戏: Django中的几种缓存方式: Django中的缓存应用: 二.跨域: 跨域知识介绍: CORS请求分类(简单请求和非简单请求) 示例: 三.自动生成接口 ...
- 400错误请求怎么解决_什么是400错误请求错误(以及如何解决)?
400错误请求怎么解决 A 400 Bad Request Error occurs when a request sent to the website server is incorrect or ...
- vuecli3中src的文件_解决vuecli3中img src 的引入问题
最近公司要做一个在线ps 的项目 但是后台没写完, 我在用本地图片上传预览的时候 发现图片不能显示, 解决的办法 是 //页面的结构 export default { data() { return ...
- vue 父页面中的方法 调用_解决Vue中页面成功渲染数据undefined的问题
前言 这个标题不太好取. 本文需要下面的知识: https://zhuanlan.zhihu.com/p/260811233zhuanlan.zhihu.com 问题描述 我最近的一个功能需求是通过 ...
- 如何解决java中的安全问题_如何解决java中“使用了未经检查或不安全的操作 请使用 -Xlint:unchecked 重新编译 ”的问题...
导语:叶子写了一个Gradle构建的Spring Boot的项目,在IntelliJ IDEA的Terminal中使用命令Gradle build编译时提示:"ResultUtil.java ...
- 如果计算机中了木马该如何解决,电脑中了顽固木马病毒采取此方法解决
使用电脑的时候经常会遇到病毒,其实电脑病毒也是比较常见的问题.电脑中毒了,会影响我们电脑的正常使用,造成安全隐患,而且有时电脑还会死机.电脑中了顽固木马病毒该怎么解决?接下去小编告诉大家具体解决方法. ...
最新文章
- 你们都是怎么学 Python 的?
- rsync+inotify
- jsp实现邮件的发送
- 3D溜溜网站用的是php吗_浩辰3D软件中全面的阵列特征你会用吗?快来看看吧
- Shiro过滤器源码
- mysql sp who_对ASE系统存储过程的剖析-sp_who
- xhost和XServer相关概念汇总
- Qt:Qt实现网页自动刷新工具
- MySQL忘记root密码重置密码(5.7版本)
- Hibernate架构
- 求三角形面积(C++)
- 20190226杂七杂八
- Win10卸载新版 Edge (基于Chromium)
- 钓鱼网站制作 ---- Setoolkit 克隆web页面钓鱼
- Shawn,别让我们失望
- 服务器DDoS攻击有几种类型?
- 医疗图像论文笔记二:《Learning to recognize Abnormalities in Chest X-Rays with Location-Aware Dense Networks》
- Oracle 大数据量查询优化
- Java| MANIFEST.MF讲解
- react中配置less-loader报错
热门文章
- 使用html5+的plus清除缓存的文件
- 一条SQL语句查询当前数据库下有多少张表
- mysql统计每周每个学校新增学生数量_深入学习之mysql(四)聚合函数
- qt中生成含有中文的json文件和解析json文件
- AVFoundation – AVAssetTrack 获取视频 音频信息
- BugkuCTF-MISC题猫片
- 正确使用计算机网络,如何正确使用计算机网络
- cookie里面用到的关键字_晓龙吊打面试官系列:synchronized关键字入门(同步方法与同步代码块)...
- suse查看mysql内存使用情况_MySQL 慢查询日志(Slow Query Log)
- 从714里连续减去6减几次得0_数学干货 | 小学数学1—6年级基础知识整理 ,预习复习都能用...