EasyUI 打印当前页

function CommonPrint(printDatagrid, type) {
    var tableString = ‘<table cellspacing="0" class="pb">‘;

    var frozenColumns = printDatagrid.datagrid("options").frozenColumns;  // 得到frozenColumns对象
    var columns = printDatagrid.datagrid("options").columns;    // 得到columns对象
    var nameList = ‘‘;

    // 载入title
    if (typeof columns != ‘undefined‘ && columns != ‘‘) {
        $(columns).each(function (index) {
            tableString += ‘\n<tr>‘;
            if (typeof frozenColumns != ‘undefined‘ && typeof frozenColumns[index] != ‘undefined‘) {
                for (var i = 0; i < frozenColumns[index].length; ++i) {
                    if (frozenColumns[index][i].field != "id" && frozenColumns[index][i].field != "cid" && frozenColumns[index][i].field != "pid") {
                        //  if (!frozenColumns[index][i].hidden) {
                        tableString += ‘\n<th width="‘ + frozenColumns[index][i].width + ‘"‘;
                        if (typeof frozenColumns[index][i].rowspan != ‘undefined‘ && frozenColumns[index][i].rowspan > 1) {
                            tableString += ‘ rowspan="‘ + frozenColumns[index][i].rowspan + ‘"‘;
                        }
                        if (typeof frozenColumns[index][i].colspan != ‘undefined‘ && frozenColumns[index][i].colspan > 1) {
                            tableString += ‘ colspan="‘ + frozenColumns[index][i].colspan + ‘"‘;
                        }
                        if (typeof frozenColumns[index][i].field != ‘undefined‘ && frozenColumns[index][i].field != ‘‘) {
                            nameList += ‘,{"f":"‘ + frozenColumns[index][i].field + ‘", "a":"‘ + frozenColumns[index][i].align + ‘"}‘;
                        }
                        tableString += ‘>‘ + frozenColumns[0][i].title + ‘</th>‘;
                        // }
                    }
                }
            }
            for (var i = 0; i < columns[index].length; ++i) {
                if (columns[index][i].field != "id" && columns[index][i].field != "cid" && columns[index][i].field != "pid") {
                    //  if (!columns[index][i].hidden) {
                    tableString += ‘\n<th width="‘ + columns[index][i].width + ‘"‘;
                    if (typeof columns[index][i].rowspan != ‘undefined‘ && columns[index][i].rowspan > 1) {
                        tableString += ‘ rowspan="‘ + columns[index][i].rowspan + ‘"‘;
                    }
                    if (typeof columns[index][i].colspan != ‘undefined‘ && columns[index][i].colspan > 1) {
                        tableString += ‘ colspan="‘ + columns[index][i].colspan + ‘"‘;
                    }
                    if (typeof columns[index][i].field != ‘undefined‘ && columns[index][i].field != ‘‘) {
                        nameList += ‘,{"f":"‘ + columns[index][i].field + ‘", "a":"‘ + columns[index][i].align + ‘"}‘;
                    }
                    tableString += ‘>‘ + columns[index][i].title + ‘</th>‘;
                    // }
                }
            }
            tableString += ‘\n</tr>‘;
        });
    }
    // 载入内容
    var rows = printDatagrid.datagrid("getRows"); // 这段代码是获取当前页的所有行
    var nl = eval(‘([‘ + nameList.substring(1) + ‘])‘);
    for (var i = 0; i < rows.length; ++i) {
        tableString += ‘\n<tr>‘;
        $(nl).each(function (j) {
            var e = nl[j].f.lastIndexOf(‘_0‘);

            tableString += ‘\n<td‘;
            if (nl[j].a != ‘undefined‘ && nl[j].a != ‘‘) {
                tableString += ‘ style="text-align:‘ + nl[j].a + ‘;"‘;
            }
            tableString += ‘>‘;
            if (e + 2 == nl[j].f.length) {
                tableString += rows[i][nl[j].f.substring(0, e)];
            }
            else
                tableString += rows[i][nl[j].f];
            tableString += ‘</td>‘;
        });
        tableString += ‘\n</tr>‘;
    }

    tableString += ‘\n</table>‘;

    var tt = /\&/g;   //匹配&号
    var tt2 = /\?/g;   //匹配问号

    if (type == 1) {

        if (navigator.userAgent.indexOf("Chrome") > 0) {
            $(‘#ShowOpenWindow‘).html("");
            $(‘#ShowOpenWindow‘).append("<div><iframe src=‘../Purchase/Cargoprint.aspx?revalue=" + tableString.replace(tt, "").replace(tt2, "") + "‘ style=‘width:99%;margin: 0px; height: 400px;‘ ></iframe></div>");
            $(‘#ShowOpenWindow‘).window(‘refresh‘).window(‘open‘);
            $(‘#ShowOpenWindow‘).window(‘close‘);
        }
        else {
            window.showModalDialog("../print.html", tableString,
         "location:No;status:No;help:No;dialogWidth:1200px;dialogHeight:600px;scroll:auto;");
        }

    }
    else {

        var f = $(‘<form action="/export.aspx" method="post" id="fm1"></form>‘);
        var i = $(‘<input type="hidden" id="txtContent" name="txtContent" />‘);
        var l = $(‘<input type="hidden" id="txtName" name="txtName" />‘);
        i.val(tableString);
        i.appendTo(f);
        l.val(encodeURIComponent(ordernumber));
        l.appendTo(f);
        f.appendTo(document.body).submit();
        document.body.removeChild(f);
    }
}

  

时间: 2024-10-18 22:11:41

EasyUI 打印当前页的相关文章

uniquefu Python+Selenium学习--打印当前页面的title及url

场景 测试中,访问1个页面然后判断其title是否符合预期是很常见的1个用例,所谓用例不够,title来凑就是这个道理.更具体一点,假设1个页面的title应该是'hello world', 那么可以写这样的一个用例:访问该页面,获取该页面的title,判断获取的值是否等于'hello world'. 获取当前页面的url也是非常重要的一个操作.在某些情况下,你访问一个url,这时系统会自动对这个url进行跳转,这就是所谓的'重定向'.一般测试重定向的方法是访问这个url,然后等待页面重定向完毕

easyui刷新当前页

修改某条数据后,想只刷新记录所在页面的两种方式: 一. var jsQuerySelectPage = function() { $('#grid').pagination('select'); }; 二. var jsQuerySelectPage = function() {$('#grid').pagination('select');//$('#grid').datagrid({// queryParams:{// pageNumber:$('#grid').datagrid('opti

PrintDocument or PrintPreviewDialog 打印

/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnPreview_Click(object sender, EventArgs e) { PackTypeReport report = null; _printTable =

模块管理常规功能自定义系统的设计与实现(16--模块数据的导出和打印[1])

模块数据的导出和打印(1) 一般管理软件的最终目的是要能输出数据,包括grid多条记录的导出和打印以及单条记录的导出和打印.对于这二种方式的导出和打印,我的设计思路是以下的方式. 一.grid数据的导出和打印. grid数据的导出,我的设计是按照grid的字段分组和列的样式来导出.每个grid列表方案都可以按此方案来导出数据.即你看到的grid是什么样的,导出来的数据就是什么样的.并且导出的时候,会加入导航值,筛选值,总计,分类汇总小计等数据.下面我对"省份"模块修改了第一个grid的

C#通过COM组件操作IE浏览器(四):实用代码总结

//执行js方法 IHTMLWindow2 win = oDocument2.parentWindow; win.execScript("functiona();", "JavaScript"); //加入自定义js IHTMLDOMNode domNode = (IHTMLDOMNode)oLeftDocument2?.body; IHTMLElement script = oDocument2.createElement("script");

Webbrowser控件execcommand参数详解

2D-Position 允许通过拖曳移动绝对定位的对象.AbsolutePosition 设定元素的 position 属性为“absolute”(绝对).BackColor 设置或获取当前选中区的背景颜色.BlockDirLTR 目前尚未支持.BlockDirRTL 目前尚未支持.Bold 切换当前选中区的粗体显示与否.BrowseMode 目前尚未支持.Copy 将当前选中区复制到剪贴板.CreateBookmark 创建一个书签锚或获取当前选中区或插入点的书签锚的名称.CreateLink

selenium python (六)定位一组对象

checkbox源码: <html><head><meta http-equiv="content-type" content="text/html;charset=utf-8" /><title>Checkbox</title><script type="text/javascript" async="" src="https://ajax.goog

Chrome快捷键

chrome窗口和标签页快捷键: Ctrl+N 打开新窗口 Ctrl+T 打开新标签页 Ctrl+Shift+N 在隐身模式下打开新窗口 Ctrl+O,然后选择文件 在谷歌浏览器中打开计算机上的文件 按住 Ctrl 键,然后点击链接 从后台在新标签页中打开链接,但您仍停留在当前标签页中 按住 Ctrl+Shift 键,然后点击链接 在新标签页中打开链接,同时切换到新打开的标签页 按住 Shift 键,然后点击链接 在新窗口中打开链接 Alt+F4 关闭当前窗口 Ctrl+Shift+T 重新打开

6.21随笔

一.object对象 一.属性 Object自带一个prototype的属性,即Object.prototype,Object.prototype本身也是一个对象,也会有一些属性和方法.如下: 1.属性 Object.prototype.writable:默认为false Object.prototype.enumerable:默认为false Object.prototype.configurable:默认为false Object.prototype.constructor:用于创建一个对象