• Excel数据导出功能


    HTML代码:

    <a id="aExportData" hidden><span>Export</span></a>

    <div class="col-sm-3 col-md-2 col-lg-1">
    <button class="btn btn-primary" id="btnImport" onclick="GetImportData()"><i class="fa fa-file-excel-o"></i> 导出</button>
    </div>

    function ImportToExcel(data) {
    try {

    if (data.length == 0) {
    layer.msg('无可导出数据', { time: 2000, icon: 0 });
    return;
    }
    var table = '<table id="newTable" border="1" cellspacing="0" cellpadding="0">';
    table += '<thead>'
    + '<tr>'
    //+ ' <th>配件申请ID</th>'
    //+ ' <th>订单ID</th>'
    + ' <th>订单编号</th>'
    //+ ' <th>车辆DI</th>'
    + ' <th>车牌号</th>'
    + ' <th>司机姓名</th>'
    + ' <th>配件名称</th>'
    + ' <th>单价</th>'
    + ' <th>数量</th>'
    + ' <th>总价</th>'
    + ' <th>应收金额</th>'
    + ' <th>实收金额</th>'
    + ' <th>欠款金额</th>'
    + ' <th>申请时间</th>'
    + '</tr>'
    + '</thead><tbody>';
    for (var i = 0, l = data.length; i < l; i++) {
    table += '<tr>'
    //+ ' <td>' + data[i].FittingSumID.toString() + '</td>'
    //+ ' <td>' + data[i].ApplyID.toString() + '</td>'
    + ' <td>' + data[i].ApplyNO.toString() + '</td>'
    //+ ' <td>' + data[i].VehicleID + '</td>'
    + ' <td>' + data[i].RegName + '</td>'
    + ' <td>' + data[i].DriverName + '</td>'
    + ' <td>' + data[i].AccessoriesName + '</td>'
    + ' <td>' + data[i].FittingUnitPrice + '</td>'
    + ' <td>' + data[i].Quantity + '</td>'
    + ' <td>' + data[i].Price + '</td>'
    + ' <td>' + data[i].AbleAmount + '</td>'
    + ' <td>' + data[i].EdAmount + '</td>'
    + ' <td>' + data[i].OwedAmount + '</td>'
    + ' <td>' + data[i].InsertTime + '</td>'
    + '</tr>';
    }
    table += '</tbody></table>';
    // 使用outerHTML属性获取整个table元素的HTML代码(包括<table>标签),然后包装成一个完整的HTML文档,设置charset为urf-8以防止中文乱码
    var html = "<html><head><meta charset='utf-8' /></head><body>" + table + "</body></html>";
    // 实例化一个Blob对象,其构造函数的第一个参数是包含文件内容的数组,第二个参数是包含文件类型属性的对象
    var blob = new Blob([html], { type: "application/vnd.ms-excel" });
    var a = document.getElementById("aExportData");
    // 利用URL.createObjectURL()方法为a元素生成blob URL
    a.href = URL.createObjectURL(blob);
    // 设置文件名
    a.download = "租户配件费用管理.xls";
    $("#aExportData span").click();
    }
    catch (ex) {
    catchTheException("ImportToExcel", ex);
    }
    };

    function GetImportData() {
    $('#btnImport').prop("disabled", "true")
    $.ajax({
    type: "Post",
    url: _rootPath + "/BusApply/ApplyFitting/GetFittingCostInfoPageAjax?",
    data: {
    pVehicleIDs: $("#hidVehicleIDs").val(),
    pBTime: $("#tBTime").val() + ' 00:00:00',
    pETime: $("#tETime").val() + ' 23:59:59',
    pCostFlag: $("#tInsurance").val(),
    pDriverName: $("#tRenterName").val(),
    page: 1,
    rows: 100000
    },
    dataType: "json",
    success: function (data) {
    $('#btnImport').prop("disabled", "")
    if (data.obj.rows) {
    ImportToExcel(data.obj.rows);
    }
    },
    error: function (err) {
    $('#btnImport').prop("disabled", "")
    layer.msg('请求数据异常' + err, { time: 2000, icon: 0 });
    }
    });
    };

  • 相关阅读:
    Unable to load configuration.
    Hibernate映射文件如何配置触发器
    hibernate的集中持久化方法的区别
    Hibernate.lock()方法中各种锁的区别
    JNDI全面总结
    代理模式
    Java常见的几种内存溢出及解决方法
    Hibernate整合C3P0实现连接池
    Hibernate与Mybatis的概念区别
    sql之truncate 、delete与drop区别
  • 原文地址:https://www.cnblogs.com/ypyp123/p/13534876.html
Copyright © 2020-2023  润新知