datatables,表格
官方文档:https://datatables.net/
var dttblTaskOrderOptions={
order: [5, 'desc'],
ajax:{
url:"order/orderdelivery/search",
type:"POST",
data:function(data){
return JSON.stringify($.extend(data,dttblTaskOrderCondition));
},
dataType:"json",
contentType:"application/json",
dataSrc:function(res){
Utils.isAjaxSuccessed(res,{scope:$formTaskOrderSearch});
return res.data;
}
},
autoWidth:true,
processing : true,
serverSide : true,
columnDefs : [ {
targets : 0,
searchable : false,
orderable : false,
data : "operation",
render : function(data, type, row, meta) {
var buttons = [];
var btnDetail = $("<div></div>");
var btnCancel = $("<div></div>");
var btnModify = $("<div></div>");
var btnReturn = $("<div></div>");
var btnSubmit = $("<div></div>");
var btnVerify = $("<div></div>");
var verificationStatus = row.verificationStatus;
var orderType = row.orderType;
var deliveryOrderStatus = row.deliveryOrderStatus;
btnDetail.append($('<button type="button" class="btn btn-xs btn-success" data-widget="btnDetail"><i class="fa fa-info"></i> 详情</button>')
.attr("data-string", JSON.stringify(row)));
buttons.push(btnDetail);
if(orderType=="日常订单"||orderType=="奔驰订单"||orderType=="大库订单"){
if(deliveryOrderStatus=="未提交发货"){
btnModify.append($('<button type="button" class="btn btn-xs btn-warning" data-widget="btnModify"><i class="fa fa-edit"></i> 修改优惠</button>')
.attr("data-string", JSON.stringify(row)));
buttons.push(btnModify);
}
}
if(orderType=="日常订单"||orderType=="奔驰订单"||orderType=="大库订单"||orderType=="补货订单"||orderType=="补发订单"){
if(deliveryOrderStatus=="未提交发货"){
btnCancel.append($('<button type="button" class="btn btn-xs btn-danger" data-widget="btnCancel"><i class="fa fa-times"></i> 取消</button>')
.attr("data-string", JSON.stringify(row)));
btnSubmit.append($('<button type="button" class="btn btn-xs btn-danger" data-widget="btnSubmit"><i class="fa fa-plane"></i> 提交发货</button>')
.attr("data-string", JSON.stringify(row)));
buttons.push(btnCancel);
buttons.push(btnSubmit);
}
if(deliveryOrderStatus=="已提交发货"){
btnReturn.append($('<button type="button" class="btn btn-xs btn-danger" data-widget="btnReturn"><i class="fa fa-sign-out"></i> 退订</button>')
.attr("data-string", JSON.stringify(row)));
buttons.push(btnReturn);
}
}
if(verificationStatus=="已核销"){
btnVerify.append($('<button type="button" class="btn btn-xs btn-danger" data-widget="btnReturnProduct"><i class="fa fa-sign-out"></i> 退货</button>')
.attr("data-string", JSON.stringify(row)));
buttons.push(btnVerify);
}
return Utils.datatables.createInlineButton(buttons);
}
}],
columns : [null,
{ "data": "deliveryOrderCode"},
{ "data": "deliveryOrderStatus"},
{ "data": "orderCode" },
{ "data": "orderType" },
{ "data": "createdTime" ,render:function(data,type,row,meta){
var createdTime="";
if(data){
createdTime = moment(data).format("YYYY-MM-DD");
}
return createdTime;
}},
{ "data": "entityInternalCode" },
{ "data": "entityCompanyFullName" },
{ "data": "warehouseName" },
{ "data": "dispatchingType" },
{ "data": "productPurchasedTotalQuantity" ,className:"text-right"},
{ "data": "productPurchasedActualDeliveryQuantity",className:"text-right" },
{ "data": "productGiftActualDeliveryQuantity",className:"text-right" },
{ "data": "productTotalGrossWeight",className:"text-right",render:function(data,type,row,meta){
return $.number(data,3);
}},
{ "data": "productTaxIncludedTotalAmount",className:"text-right",render : function(data, type, row, meta) {
return $.number(data,2)||0.00;
}},
{ "data": "discountAmount",className:"text-right",render : function(data, type, row, meta) {
return $.number(data,2)||0.00;
}},
{ "data": "rebateAmount",className:"text-right",render : function(data, type, row, meta) {
return $.number(data,2)||0.00;
}},
{ "data": "productTaxIncludedTotalAmount",className:"text-right",render:function(data,type,row,meta){
var data = new Big(data);
var discountAmount = new Big(row.discountAmount);
var rebateAmount = new Big(row.rebateAmount);
data = data.minus(discountAmount).minus(rebateAmount);
var data = data.toString();
return $.number(data,2);
}
},
{ "data": "expectPickingDate",render:function(data,type,row,meta){
var expectPickingDate="";
if(data){
expectPickingDate = moment(data).format("YYYY-MM-DD");
}
return expectPickingDate;
}},
{ "data": "deliveryActualDate",render:function(data,type,row,meta){
var deliveryActualDate="";
if(data){
deliveryActualDate = moment(data).format("YYYY-MM-DD");
}
return deliveryActualDate;
}},
{ "data": "verificationStatus"}
]
}
var $dttbltaskorder = $("[data-widget=dttbltaskorder]").DataTable(dttblTaskOrderOptions);
//查询
var $btnsearch = $("button[data-widget=btnSearch]");
$btnsearch.click(function(e){
dttblTaskOrderCondition = Utils.formArrayToObject($formTaskOrderSearch.serializeArray());
$dttbltaskorder.draw();
});
$dttbltaskorder.colums() //列
$dttbltaskorder.cells()//单元格
$dttbltaskorder.data()//表格里的数据
可以通过render里的function(data, type, row, meta)的row绑定一行的数据(data-string)
博客地址:http://www.cnblogs.com/windseek/
datatables,表格的更多相关文章
- datatables表格
datatables表格 并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是雪中送炭,当然对于专业的 ...
- 前端常用功能记录(二)—datatables表格
并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是雪中送炭,当然对于专业的前端开发者来说它更是锦上添 ...
- 前端常用功能记录(二)—datatables表格(转)
前端常用功能记录(二)—datatables表格 并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是 ...
- JQuery中的DataTables表格插件
一.DataTables表格插件的简介 DataTables是一个jQuery的表格插件.它具有以下特点: 自动分页处理 即时表格数据过滤 数据排序以及数据类型自动检测 自动处理列宽度 可通过CSS定 ...
- 【日常笔记】datatables表格数据渲染
现在有很多表格渲染方式 这里只是记录怎么使用datatables渲染数据 使用datatables可以更方便的来渲染数据 [中文api]http://datatables.club/index.htm ...
- 前端常用功能记录(三)—datatables表格初始化
其实上篇说的也算是jQuery Datatables的初始化,但主要是对某些字段意义的理解.下面记录的是datatables常用的功能的初始化. 数据源 我经常使用的有两种,一种是JavaScript ...
- 前端常用功能记录(三)—datatables表格初始化(转)
数据源 我经常使用的有两种,一种是JavaScript 中的数组,通过在初始化对象中传递一个名为 aaData 的数组,同样可以提供表格数据,前缀 aa 说明这是一个数组的数组,外层的数组表示表格的行 ...
- DataTables 表格固定栏使用方法
有时候数据过多,为了用户体验,需要将重要的栏目固定不动,如下图所示: 从上图我们可以看出,表格滚动的时候,左边5栏是不动的.现在说一下实现方法: 插件地址: https://datatables.ne ...
- datatables表格行内编辑的实现
Datatables是一款jquery表格插件,它是一个高度灵活的工具,灵活就意味着很多功能需要自己去实现,比如说行内编辑功能. Datatables自己是没有行内编辑功能的,最简单的是通过modal ...
随机推荐
- SVM入门(一)
近来,了解了一下SVM(支持向量机 support vector machine)的原理.顺便把自己理解的内容整理一下. 不讲背景啦,直接切入主题. 一.什么是支持向量机 好比说,我们现在在一 ...
- Sqlite 帮助类 SQLiteHelper
///源码下载地址:http://download.csdn.net/detail/kehaigang29/8836171 ///dll下载地址:http://download.csdn.net/de ...
- 《深入理解java虚拟机-高效并发》读书笔记
Java内存模型与线程 概述 多任务处理在现代计算机操作系统中几乎已是一项必备的功能,多任务运行是压榨手段,就如windows一样,我们使劲的压榨它运行多个任务,俱要high又要耍.并发则是另外一种更 ...
- 【转】SQLState详解
根据 X/Open 和 SQL Access Group SQL CAE 规范 (1992) 所进行的定义,SQLERROR 返回 SQLSTATE 值.SQLSTATE 值是包含五个字符的字符串 . ...
- angular drag and drop (ngDraggable) 笔记
这是原文 https://github.com/fatlinesofcode/ngDraggable 这是另一个dnd,这比较灵活,可以监听事件.我只用简单的排序功能,其他没去了解太多.有机会遇到功能 ...
- 第28篇 js中let和var
let与var 在js中声明一个变量除了一个var 还有一个let的声明.对于var 在前面的作用域中已经讲过,这次主要说下二者的区别: 在MDN上有这样的一个demo: var list = d ...
- 关于zepto在chrome中触发两次的解决方案
复现条件:chrome 55+ 1.zepto tap的实现及double fire的原因 在监听DOM根节点的时候,touchStart后通过XY的坐标偏差,与tapTime的计时判断Tap/Lon ...
- Laravel中间件
先谈一谈中间件的使用场景,比如路由转到一张页面,我们需要记录用户的cookie,或者检测用户的访问权限,这些操作如果全写在控制器里是不合适的,因为随着业务的扩充,控制器里的业务逻辑会越来越臃肿,难以维 ...
- 手把手教你webpack、react和node.js环境配置(下篇)
上篇我介绍了前端下webpack和react.redux等环境的配置,这篇将继续重点介绍后台node.js的配置. 这里是上篇链接:手把手教你webpack.react和node.js环境配置(上篇) ...
- rdb map出错rbd sysfs write failed
创建了一个rbd镜像 $ rbd create --size 4096 docker_test 然后,在Ceph client端将该rbd镜像映射为本地设备时出错. $ rbd map docker_ ...