У меня есть собственное расширение контроллера для возврата файла Excel в виде ответа HttpContext.
Мое действие контроллера выглядит следующим образом:
public ActionResult ExportToExcel()
{
return this.Excel(headers, results, filename);
}
Это прекрасно работает с обычным обратным вызовом MVC.
Я пытаюсь создать диалоговое окно jQuery UI, где пользователь может ввести имя файла и нажать «Экспорт». При нажатии кнопки «Экспорт» в контроллере вызывается действие MVC, но файл не отображается в браузере.
Мой код диалога:
$("#export-excel").dialog({
autoOpen: false,
modal: true,
title: "Export to Excel",
buttons: {
Export: function () {
$.post("/Search/ExportToExcel",
function () {
$("#export-excel").dialog("close");
});
}
}
});
$("#export-excel-button").click(function () {
$("#export-excel").dialog("open");
return false;
});
И HTML:
<div id="export-excel" style="display: none;">
Filename:
<input type="text" value="Results.xls"/>
</div>
<input type="button" value="Export" id="export-excel-button" />