JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了实现easyui的datagrid导出为excel的示例代码大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

之前有介绍过如何实现easyui里datagrid内容的打印,今天给大家介绍下如何实现datagrid内容导出为excel文件。以下为代码实现:

export.js

0586@ble(printDatagrid) { var tableString = 'columns = printDatagrid.datagrid("options").frozencolumns; // 得到frozencolumns对象 var columns = printDatagrid.datagrid("options").columns; // 得到columns对象 var nameList = new Array();

// 载入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].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.push(frozencolumns[index][i]);
}
tableString += '>' + frozencolumns[0][i].title + '';
}
}
}
for (var i = 0; i < columns[index].length; ++i) {
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.push(columns[index][i]);
}
tableString += '>' + columns[index][i].title + '';
}
}
tableString += '\n</tr>';
});
}
// 载入内容
var rows = printDatagrid.datagrid("getRows"); // 这段代码是获取当前页的所有行
for (var i = 0; i < rows.length; ++i) {
tableString += '\n<tr>';
for (var j = 0; j < nameList.length; ++j) {
var e = nameList[j].field.lasTindexOf('_0');

@H_772_54@ tableString += '\n<td'; if (nameList[j].align != 'undefined' && nameList[j].align != '') { tableString += ' style="text-align:' + nameList[j].align + ';"'; } tableString += '>'; if (e + 2 == nameList[j].field.length) { tableString += rows[i][nameList[j].field.subString(0,E)]; } else tableString += rows[i][nameList[j].field]; tableString += '</td&gt;'; } tableString += '\n</tr&gt;';

}
tableString += '\n</table>';
return tableString;
}

function Export(strXlsName,exportGrid) {
var f = $('<form action="/export.aspx" method="post" id="fm1">');
var i = $('');
var l = $('');
i.val(Change@R_989_10586@ble(exportGrid));
i.appendTo(f);
l.val(strXlsName);
l.appendTo(f);
f.appendTo(document.body).submit();
document.body.removeChild(f);
}

@H_262_79@

export.aspx

ject sender,EventArgs E) { Response.Clear(); Response.buffer = true; Response.Charset = "utf-8"; Response.ContentEncoding = System.Text.Encoding.UTF8; Response.AppendHeader("content-disposition","attachment;filename=\"" + httpUtility.HtmlEncode(request["txtName"]??datetiR_997_11845@e.Now.ToString("yyyymMdd")) + ".xls\""); Response.ContentType = "Application/ms-excel"; Response.Write("\n\n"); Response.Write("\n\n"); Response.Write("\n" + request["txtContent"] + "\n\n"); Response.Flush(); Response.End(); } @H_262_79@

其中export.aspx为了防止前台页面内容干扰,前台页面只留:

@H_262_79@

这句话,其他的全部删除。

调用方法:

);" onclick="Export('导出excel',$('#grid'));">导出 @H_262_79@

以上就是小编为大家带来的实现easyui的datagrid导出为excel的示例代码全部内容了,希望大家多多支持菜鸟教程~

大佬总结

以上是大佬教程为你收集整理的实现easyui的datagrid导出为excel的示例代码全部内容,希望文章能够帮你解决实现easyui的datagrid导出为excel的示例代码所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: