本帖最后由 crhcss 于 2015-11-3 16:52 编辑
以下是导出excel按钮的代码:
<f:Button Icon="DatabaseTable" runat="server" Text="Excel导出"
ID="btnExcel" EnableAjax="false" DisableControlBeforePostBack="false" />
当我把EnableAjax设置为false时,不会出错;而如果设置为true时,则有些地方可用,有些地方不可用。导出Excel的方法是使用开源版官方实例
protected void ExportExcel(Grid objGrid)
{
if (objGrid.Rows.Count > 0)
{
Response.ClearContent();
Response.Write("<meta http-equiv=Content-Type; content=text/html;charset=UTF-8>");
Response.AddHeader("content-disposition", "attachment;filename=myExcel.xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.Write(GetGridTableHtml(objGrid));
Response.End();
}
else
{
Notify("列表无数据,导出Excel失败!");
}
}
初步确认与EnableAjax的设置无关,因为有些实例是可以通过的
问题已经解决了, 通过ajax调用后台函数来实现excel导出
var grid = F(GridData); if (grid.store.data.items.length > 0) {
F.control_enable_ajax = false;
__doPostBack('', 'cs');
}
else {
F.alert('列表无数据,导出Excel失败!', '提示');
}
|