ajax에서 웹 페이지를 다운로드하는 또 다른 솔루션이 있습니다. 하지만 먼저 처리 한 다음 다운로드해야하는 페이지를 언급하고 있습니다.
먼저 결과 다운로드에서 페이지 처리를 분리해야합니다.
1) 페이지 계산은 ajax 호출에서만 수행됩니다.
$ .post ( "CalculusPage.php", {calculusFunction : true, ID : 29, data1 : "a", data2 : "b"},
기능 (데이터, 상태)
{
if (상태 == "성공")
{
/ * 2) 답변에서 이전 계산을 사용하는 페이지가 다운로드됩니다. 예를 들어, 이것은 ajax 호출에서 계산 된 테이블의 결과를 인쇄하는 페이지 일 수 있습니다. * /
window.location.href = DownloadPage.php + "? ID ="+ 29;
}
}
);
// 예 : CalculusPage.php
if (! empty ($ _ POST [ "calculusFunction"]))
{
$ ID = $ _POST [ "ID"];
$ query = "INSERT INTO ExamplePage (data1, data2) VALUES ( '". $ _ POST [ "data1"]. "', '". $ _ POST [ "data2"]. "') WHERE id =". $ ID;
...
}
// 예 : DownloadPage.php
$ ID = $ _GET [ "ID"];
$ sede = "선택 * FROM ExamplePage WHERE id =". $ ID;
...
$ filename = "Export_Data.xls";
header ( "콘텐츠 유형 : application / vnd.ms-excel");
header ( "Content-Disposition : inline; filename = $ filename");
...
이 솔루션이 저와 마찬가지로 많은 사람들에게 유용 할 수 있기를 바랍니다.