这里是我的代码的一部分。当我点击一个按钮然后下载以使用此jqxgrid优秀文件。我试图在jqwidget.com上找到答案,但该网站已关闭 我在这个网站上找到了类似的答案。但这是关于PHP的。但我的是java。
$("#jqxgrid").jqxGrid(
{
width: '99.7%',
height: '99.7%',
source: dataAdapter,
virtualmode: true,
rendergridrows: function()
{
return dataAdapter.records;
},
theme: theme,
columnsresize: true,
pageable: true,
enabletooltips: true,
//autoheight: true,
//autorowheight: true,
selectionmode: 'singlecell',
altrows: true,
sortable: true,
editable: true,
editmode: 'dblclick',
scrollmode: 'deferred',
pagesize: 30,
pagesizeoptions: ['10', '20','30', '50', '100', '200', '300', '500'],
columns: [
{ text: ' ', datafield: 'procImg', align : 'center', cellsalign : 'center', width: '30px', cellsrenderer: imagerenderer, editable: false, filterable:false, sortable: false },
(retireFlag=="0")?{ text: 'delete', datafield: 'delBool', align : 'center', cellsalign : 'center', columntype: 'checkbox', width: '41px', filterable:false, sortable: false}:null,
(retireFlag=="0")?{ text: 'Use', dataField: 'useBool', align : 'center', cellsalign : 'center', columntype: 'checkbox', width: '67px', editable: true, sortable: false}:null,
{ text: 'ID', dataField: 'mng_id', align : 'center', cellsalign : 'center', columntype: 'textbox', width: '115px', editable: false, cellsrenderer: cellsrenderer1 },
]
});
答案 0 :(得分:0)
要导出到Excel,您可以使用这样的按钮
<button id="export_Excel">Excel</button>
and in your javascript file,
$("#export_Excel").click(function() {
$("#jqxgrid").jqxGrid('exportdata', 'xls', 'Filename');
});
此方法将导出网格的过滤内容。 “exportdata”方法有一个最后一个参数。见下面的文档
将网格中加载的所有行导出为Excel,XML,CSV,TSV,HTML或JSON。
导出方法的第一个参数确定导出的类型 - 'xls','xml','html','json','tsv'或'csv'。 第二个参数是文件的名称。如果您不提供文件名,Grid将把数据导出到本地变量。 例如:
var data = $("#jqxgrid").jqxGrid('exportdata', 'json');
第三个参数是可选的,用于确定是否导出列的标题。可接受的值是 - 真和假。默认情况下,导出器导出列标题。 第四个参数是可选的,它确定要导出的行数组。默认情况下,将导出所有行。如果要导出所有行,请设置null。 第五个参数是可选的,用于确定是否导出隐藏列。可接受的值是 - 真和假。默认情况下,导出器不会导出隐藏的列。 第六个参数是可选的,它确定导出服务器的URL。默认情况下,导出器托管在jQWidgets服务器上。 最后一个参数是可选的,用于确定char集。 代码示例
调用exportdata方法。
$("#jqxGrid").jqxGrid('exportdata', 'json', 'jqxGrid');
自定义网址参数的代码示例
$("#jqxGrid").jqxGrid('exportdata', 'json', 'jqxGrid', true, null, true, http://www.myserver.com/save-file.php);
导出到Excel使用ExcelML格式。 ExcelML是基于XML的文件格式。它符合Microsoft XMLSS规范,并在Microsoft Office 2003及更高版本中受支持。 *当您打开导出到Excel时,您可能会收到以下消息:“您尝试打开的文件'file_name.xls'的格式与文件扩展名指定的格式不同。验证文件是否已损坏,在打开此文件之前,它来自受信任的来源。您要立即打开该文件吗?“ 以下帖子详细解释了此警告消息的原因:excel-2007-extension-warning.aspx
答案 1 :(得分:0)
在JQgrid中你可以遵循:
首先创建一个按钮:
下载
function Export() {
var params = { "fromDate": $("#hdnFrom").val(), "toDate": $("#hdnTo").val() }
var str = jQuery.param(params);
window.open("/Analytics/ExportGridView?" + str, '_blank')
}
现在从控制器调用处理程序方法:
public ActionResult ExportGridView(string fromDate,string toDate)
{
try
{
//LINQ to SQL context class
//Create gridview object - Make sure you have added reference to Syster.Web.UI.ServerControls
GridView gv = new GridView();
//Call Method to apply style to gridview - This is optional part and can be avoided
StyleGrid(ref gv);
//assing datasource from context class to gridview object
gv.DataSource = GetReportDetails(fromDate, toDate);
//gv.DataSource = Convert.(dataContext.GetTractorTrasactionDateReport);
//Important - bind gridview object
gv.DataBind();
//We have gridview object ready in memory. Follow normal "export gridview to excel" code
Response.ClearContent();
Response.ClearHeaders();
Response.Clear();
Response.AddHeader("content-disposition", "attachment; filename=AnalyticReport.xls");
Response.ContentType = "application/ms-excel";
//Ccreate string writer object and pass it to HtmlTextWriter object
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
//Call gridiview objects RenderControl method to output gridview content to HtmlTextWriter
gv.RenderControl(htw);
//Pass rendered string to Response object which would be presented to user for download
Response.Write(sw.ToString());
Response.End();
return View("Analytics");
}
catch (Exception ex)
{
return Json(ex.Message.ToString());
}
}
从隐藏字段传递搜索过滤器:
public List<ExportModel> GetReportDetails(string fromDate, string toDate)
{
var userList = new List<ExportModel>();
var Process = from TT in db.tblManagePosts
where TT.Date >= Convert.ToDateTime(fromDate) && TT.Date <= Convert.ToDateTime(toDate) && TT.IsArchive == 0
orderby TT.PostId descending
select new { TT.Title,TT.Content, TT.Date,TT.Views };
int Count = Process.Count();
if (Count > 0)
{
foreach (var selection in Process)
{
ExportModel user = new ExportModel();
user.Title = selection.Title;
user.Content = Regex.Replace(selection.Content, @"<[^>]*>", String.Empty);
DateTime time = selection.Date;
String format = "dd/MM/yyyy";
user.Date = time.ToString(format);
user.Views = selection.Views;
userList.Add(user);
}
}
return userList;
}
您将在Excel工作表中获得正确的搜索数据。