我添加如下因素線到我的MasterTableView:與出口radgrid控件Telerik的問題練成
<CommandItemSettings ShowExportToWordButton="true" ShowExportToExcelButton="true" ShowExportToCsvButton="true" />
但是當我點擊的是,加載DIV對電網被刷新,沒有什麼事情發生出現,然後數據。沒有「保存文件」窗口。
我錯過了什麼?
我添加如下因素線到我的MasterTableView:與出口radgrid控件Telerik的問題練成
<CommandItemSettings ShowExportToWordButton="true" ShowExportToExcelButton="true" ShowExportToCsvButton="true" />
但是當我點擊的是,加載DIV對電網被刷新,沒有什麼事情發生出現,然後數據。沒有「保存文件」窗口。
我錯過了什麼?
它引起AJAX(已知問題基本頁面需要返回流而不是用於AJAX的XttpRequest),因此在這個回傳中需要取消AJAX。 你可以找到更多的信息here和下載幾個示例項目,顯示出口radgrid的各種方式。
PS。 的「現成的解決方案」,是把它添加到您的JS代碼
<script type="text/javascript">
function mngRequestStarted(ajaxManager, eventArgs)
{
if(eventArgs.EventTarget == "mngBtnExcel" || eventArgs.EventTarget == "mngBtnWord")
{
eventArgs.EnableAjax = false;
}
}
function pnlRequestStarted(ajaxPanel, eventArgs)
{
if(eventArgs.EventTarget == "pnlBtnExcel" || eventArgs.EventTarget == "pnlBtnWord")
{
eventArgs.EnableAjax = false;
}
}
function gridRequestStart(grid, eventArgs)
{
if((eventArgs.EventTarget.indexOf("gridBtnExcel") != -1) || (eventArgs.EventTarget.indexOf("gridBtnWord") != -1))
{
eventArgs.EnableAjax = false;
}
}
</script>
但是我還是建議你閱讀所附link
添加一個按鈕導出爲excel;
<asp:Button ID="Button1" CssClass="button" Width="150px" Text="Export to Excel" OnClick="Button1_Click"
RUNAT = 「服務器」>
在後面的代碼方:
protected void Button1_Click(object sender, System.EventArgs e)
{
ConfigureExport();
RadGrid1.MasterTableView.ExportToExcel();
}
public void ConfigureExport()
{
RadGrid1.ExportSettings.ExportOnlyData = true;
RadGrid1.ExportSettings.IgnorePaging = true;
RadGrid1.ExportSettings.OpenInNewWindow = true;
}
參考:http://demos.telerik.com/aspnet-ajax/grid/examples/generalfeatures/exporting/defaultcs.aspx
話題網格之前添加以下代碼:
<script type="text/javascript">
function onRequestStart(sender, args)
{
if (args.get_eventTarget().indexOf("ExportToExcelButton") >= 0 ||
args.get_eventTarget().indexOf("ExportToWordButton") >= 0 ||
args.get_eventTarget().indexOf("ExportToCsvButton") >= 0)
{
args.set_enableAjax(false);
}
}
</script>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
<ClientEvents OnRequestStart="onRequestStart" />
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadGrid1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadGrid1" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
對於後面的代碼添加以下之一:
protected void RadGrid1_ItemCommand(object sender, Telerik.Web.UI.GridCommandEventArgs e)
{
if (e.CommandName == Telerik.Web.UI.RadGrid.ExportToExcelCommandName ||
e.CommandName == Telerik.Web.UI.RadGrid.ExportToWordCommandName ||
e.CommandName == Telerik.Web.UI.RadGrid.ExportToPdfCommandName ||
e.CommandName == Telerik.Web.UI.RadGrid.ExportToCsvCommandName)
{
gridResult.ExportSettings.IgnorePaging = true;
gridResult.ExportSettings.OpenInNewWindow = true;
if (e.CommandName == Telerik.Web.UI.RadGrid.ExportToExcelCommandName)
gridResult.MasterTableView.ExportToExcel();
else if (e.CommandName == Telerik.Web.UI.RadGrid.ExportToWordCommandName)
gridResult.MasterTableView.ExportToWord();
else if (e.CommandName == Telerik.Web.UI.RadGrid.ExportToCsvCommandName)
gridResult.MasterTableView.ExportToCSV();
else if (e.CommandName == Telerik.Web.UI.RadGrid.ExportToPdfCommandName)
gridResult.MasterTableView.ExportToPdf();
}
}
參考:http://demos.telerik.com/aspnet-ajax/grid/examples/generalfeatures/exporting/defaultcs.aspx
讓我知道使用後的輸出。 – Niran 2012-08-06 07:01:03
我不喜歡這樣寫道:
我們有電網下一個按鈕:
<asp:Button ID="cmdExportToExcel" runat="server"
Text="Export to Excel" OnClick="cmdExportToExcel_OnClick" />
而且在調用ExportToExcel onclick句柄,然後清除響應頭
protected void cmdExportToExcel_OnClick(object sender, EventArgs e) {
radGrid.MasterTableView.ExportToExcel();
Page.Response.ClearHeaders();
Page.Response.ClearContent();
}
在網格上有一些ExportSettings。
我將ExportSettings.ExportOnlyData = true,ExportSettings.FileName設置爲具有當前數據的唯一名稱,並且IgnorePaging也是true(因此我只導出所有數據)。
完美的作品!
添加ClientEvents-OnRequestStart = 「requestStart」 你RadAjaxPanel
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server"
ClientEvents-OnRequestStart="requestStart">
添加腳本
<script type="text/javascript">
function requestStart(sender, args)
{
if (args.get_eventTarget().indexOf("ExportToExcelButton") >= 0)
{
args.set_enableAjax(false);
}
}
</script>
同樣的結果,不工作,因爲它應該。有一刻加載div並刷新網格。沒有samve文件窗口 – gruber 2012-01-17 07:25:53