我在点击功能区按钮
时尝试导出网格视图问题是功能区按钮单击是客户端事件,导出功能由服务器处理。
<script type="text/javascript">
//Ribbon events
function onCommandExecuted(s, e) {
var name = e.item.name;
if (name == "Ajouter") {
grid.AddNewRow();
}
else if (name == "Modifier") {
grid.StartEditRow(grid.GetFocusedRowIndex());
}
else if (name == "Supprimer") {
if (confirm("Vous confirmez la suppression de l'élement selectionné ?")) {
grid.DeleteRow(grid.GetFocusedRowIndex());
}
}
else if (name = "Excel")
{
//What to do here?
}
}
</script>
//The export function (C#)
protected void btnXlsExport_Click(object sender, EventArgs e)
{
gridExport.WriteXlsToResponse();
}
如何在我的脚本中调用导出函数。谢谢。
答案 0 :(得分:1)
如前所述,您只能在回发后从服务器站点导出GridView。您可以在gridview隐藏控件附近添加,例如下面的代码
<dx:ASPxButton runat="server" ID="_exportBtn" ClientInstanceName="_exportBtn" ClientVisible="false" OnClick="OnClickExport" />
将卸载代码移动到OnClickExport方法
public void OnClickExport(object sender, EventArgs args)
{
gridExport.WriteXlsxToResponse();
}
然后从客户端代码
单击它 else if (name = "Excel")
{
//What to do here?
_exportBtn.OnClick();
}
答案 1 :(得分:0)
ASPxGridView不允许在客户端上导出其内容 侧。您只能在服务器端完成此任务。这个任务 只能通过回发在服务器端完成。
参见:
How to export ASPxGridView content on the client side
ASPxGridView - How to export the grid on the client side
参见:
Exporting Data - Exporting to PDF, XLS, XLSX and RTF
修改强>
资料来源:ASPxGridView - How to export ASPxGridView via a callback
由于回调设计:回调的概念,在处理回调时无法导出和下载文件。要解决此问题,请通过ASPxButton发送完整的回发。在这种情况下,您将能够在ASPxButton.Click事件处理程序中导出网格数据。请注意,您需要将ASPxGridView绑定到依赖于ASPxtabControl的活动选项卡的相应数据源。
例:
// Buttton Markup
<dx:ASPxButton ID="btnXlsExport" runat="server" AutoPostBack="False" ClientInstanceName="btnXlsExport" UseSubmitBehavior="true" OnClick="btnXlsExport_Click" Text="Export">
</dx:ASPxButton>
//使用ASPxClientButton.DoClick Method
在您的JavaScript代码中直接调用它else if (name = "Excel")
{
btnXlsExport.DoClick();
}