zoukankan      html  css  js  c++  java
  • easyui datagrid表格最后一行添加合计

    1.

    $.extend($.fn.datagrid.methods, {
    	    statistics: function(jq) {
    	        var opt = $(jq).datagrid('options').columns;
    	        var rows = $(jq).datagrid("getRows");
    	        var footer = new Array();
    	        footer['sum'] = "";
    	        for (var i = 0; i < opt[0].length; i++) {
    	            if (opt[0][i].sum) {
    	                footer['sum'] = footer['sum'] + sum(opt[0][i].field, 1) + ',';
    	            }
    	        }
    	        var footerObj = new Array();
    	        if (footer['sum'] != "") {
    	            var tmp = '{' + footer['sum'].substring(0, footer['sum'].length - 1) + "}";
    	            var obj = eval('(' + tmp + ')');
    	            if (obj[opt[0][0].field] == undefined) {
    	                footer['sum'] += '"' + opt[0][0].field + '":"<b>合计:</b>"';//第0列显示为合计
    	                obj = eval('({' + footer['sum'] + '})');
    	            } else {
    	                obj[opt[0][0].field] = "<b>合计:</b>" + obj[opt[0][0].field];
    	            }
    	            footerObj.push(obj);
    	        }
    	        if (footerObj.length > 0) {
    	            $(jq).datagrid('reloadFooter', footerObj);
    	        }
    	        function sum(filed) {
    	            var sumNum = 0;
    	            var str = "";
    	            for (var i = 0; i < rows.length; i++) {
    	                var num = rows[i][filed];
    	                sumNum += Number(num);
    	            }
    	            return '"' + filed + '":"' + sumNum.toFixed(2) + '"';
    	        }
    	    }
    	});
    

      

      /* 商品列表  */
        var posid = {$data.posid};
    	objs.datagrid = $("#datagrid").datagrid({
    		url : CONFIG.getGoodsListurl,
    		toolbar : '#toolbar', 
    		fit : true, 
    		border : false, 
    		striped : true, 
    		loadMsg : '正在加载数据,请稍后...',
    		rownumbers : true, 
    		singleSelect:true,
    		pagination:false,
    		pageSize:20,
    		showFooter:true,  
    		onClickRow: onClickRow,
    		columns : [CONFIG.COLUMNS],
    	 	queryParams: {
    			posid:posid
    		},
    		onLoadSuccess:function (data){
    			$('#datagrid').datagrid('statistics');
    			$(this).datagrid('unselectAll');
    			$(this).datagrid('selectRow',0);
    		}
    	});
    	
    

      

    CONFIG.COLUMNS = [{
    	field : 'code',
    	title : '{:L("商品编号")}',
    	width : 100,
    	align : 'right'
    },{
    	field : 'mgname',
    	title : '{:L("商品名称")}',
    	width : 180
    },{
    	field : 'specname',
    	title : '{:L("规格")}',
    	width : 150,
    },{
    	field : 'mgtname',
    	title : '{:L("分类")}',
    	width : 170,
    },{
    	field : 'dhprice',
    	title : '{:L("单价")}',
    	width : 100,
    	align : 'right'
    },{
    	field : 'goodsno',
    	title : '{:L("订货数量")}',
    	width : 120,
    	sum   : true,
    	align : 'right'
    },{
    	field : 'qgoodsno',
    	title : '{:L("配送数量")}',
    	width : 100,
    	editor:{
    		type:'numberbox',
    		options:{
    			max:999999.99,
    			precision:2,
    			min:0
    		}
    	}
    },{
    	field : 'dhunit',
    	title : '{:L("出入库单位")}',
    	width : 120
    },{
    	field : 'tprice',
    	title : '{:L("小计")}',
    	width : 120,
    	sum   : true,
    	align : 'right'
    },{
    	field : 'remarks',
    	title : '{:L("备注")}',
    	width : 150,
    }];
    

      

    /* 启用可编辑表格*/
    	var editIndex = undefined;
    	function onClickRow(index){
    		if (editIndex == index)return false;
    		if (endEditing()){
    			objs.datagrid.datagrid('selectRow', index).datagrid('beginEdit', index);
    			editIndex = index;
    		} else {
    			objs.datagrid.datagrid('selectRow', editIndex);
    		}
    	}
    	
    	/* 完成可编辑*/
    	function endEditing(){
    		if(editIndex == undefined){return true;}
    		if(objs.datagrid.datagrid('validateRow', editIndex)){
    			objs.datagrid.datagrid('endEdit', editIndex);
    			editIndex = undefined;
    			return true;
    		}else {
    			return false;
    		}
    	}
    

      

  • 相关阅读:
    Largest Rectangle in Histogram
    Valid Sudoku
    Set Matrix Zeroes
    Unique Paths
    Binary Tree Level Order Traversal II
    Binary Tree Level Order Traversal
    Path Sum II
    Path Sum
    Validate Binary Search Tree
    新手程序员 e
  • 原文地址:https://www.cnblogs.com/cnn2017/p/8876620.html
Copyright © 2011-2022 走看看