Category / Section
How to send additional parameters to export method in Spreadsheet
1 min read
Description
This knowledge base explains how to send additional parameters to export method in Spreadsheet.
Solution
It can be achieved by using “customParams” property in “onExport” client-side event.
HTML
<div id="Spreadsheet"></div>
JS
$("#Spreadsheet").ejSpreadsheet({ exportSettings: { excelUrl: "Spreadsheet/ExcelExport", }, onExport: "onExport" });
Web API
[AcceptVerbs("POST")] public void ExcelExport() { string sheetModel = HttpContext.Current.Request.Params["sheetModel"], sheetData = HttpContext.Current.Request.Params["sheetData"], myData = HttpContext.Current.Request.Params["myData"]; Spreadsheet.Save(sheetModel, sheetData, "Sample", ExportFormat.XLSX, ExcelVersion.Excel2013); }
RAZOR
@(Html.EJ().Spreadsheet<object>("Spreadsheet") .ExportSettings(export => { export.ExcelUrl("ExcelExport"); }) .ClientSideEvents( events => events.OnExport("onExport") ) )
C#
[AcceptVerbs(HttpVerbs.Post)] public void ExcelExport(string sheetModel, string sheetData, string myData) { Spreadsheet.Save(sheetModel, sheetData, "Sample", ExportFormat.XLSX, ExcelVersion.Excel2013); }
ASPX
<ej:spreadsheet id="Spreadsheet" onserverexcelexporting="Spreadsheet_ServerExcelExporting" runat="server"> <ClientSideEvents OnExport="onExport" /> <Sheets> <ej:Sheet></ej:Sheet> </Sheets> </ej:spreadsheet>
ASPX.CS
protected void Spreadsheet_ServerExcelExporting(object sender, Syncfusion.JavaScript.Web.SpreadsheetEventArgs e) { var args = e.Arguments; string sheetModel = args["sheetModel"].ToString(); string sheetData = args["sheetData"].ToString(); string myData = args["myData"].ToString(); Spreadsheet.Save(sheetModel, sheetData, "Sample", ExportFormat.XLSX, ExcelVersion.Excel2013); }
function onExport(args) { //customParams property is used for sending additional parameters to server. args.customParams = { myData: "Spreadsheet" }; }
You can refer the below documentation,
https://help.syncfusion.com/js/spreadsheet/open-and-save