简体   繁体   English

如何将Ajax调用输出转换为Excel下载文件

[英]How to convert a ajax call output to excel download file

My Jquery Php ajax calling showing the below result at alert() funcation but I want to make this output as a excelsheet download on ajax call. 我的Jquery Php ajax调用在alert()函数中显示以下结果,但是我想将此输出作为excelsheet下载在ajax调用上显示。 How can I do it? 我该怎么做?

    <?xml version="1.0" encoding="UTF-8"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">
<Worksheet ss:Name="semonExport Received Reports - ">
<Table>
<Row>
<Cell><Data ss:Type="String">semon RECEIVING REPORT</Data></Cell>
</Row>
<Row>
<Cell><Data ss:Type="String"> </Data></Cell>
</Row>
<Row>
<Cell><Data ss:Type="String">S/O</Data></Cell>
<Cell><Data ss:Type="String">SHIPPER</Data></Cell>
<Cell><Data ss:Type="String">NOTIFY PARTY</Data></Cell>
<Cell><Data ss:Type="String">INVOICE NO</Data></Cell>
<Cell><Data ss:Type="String">PO</Data></Cell>
<Cell><Data ss:Type="String">NG ITEM</Data></Cell>
<Cell><Data ss:Type="String">TOTAL LOT</Data></Cell>
<Cell><Data ss:Type="String">LOT RECEIVED</Data></Cell>
<Cell><Data ss:Type="String">PKGS</Data></Cell>
<Cell><Data ss:Type="String">QTY</Data></Cell>
<Cell><Data ss:Type="String">UNIT</Data></Cell>
<Cell><Data ss:Type="String">CBM</Data></Cell>
<Cell><Data ss:Type="String">Cweight</Data></Cell>
<Cell><Data ss:Type="String">Weight unit</Data></Cell>
<Cell><Data ss:Type="String">MSMT</Data></Cell>
<Cell><Data ss:Type="String">DEST</Data></Cell>
<Cell><Data ss:Type="String">STYLE</Data></Cell>
<Cell><Data ss:Type="String">R/CGO</Data></Cell>
<Cell><Data ss:Type="String">SB NO</Data></Cell>
<Cell><Data ss:Type="String">SB Date</Data></Cell>
<Cell><Data ss:Type="String">RECVDOC</Data></Cell>
<Cell><Data ss:Type="String">TOTAL VALUE</Data></Cell>
<Cell><Data ss:Type="String">EXP</Data></Cell>
<Cell><Data ss:Type="String">EXP DATE</Data></Cell>
<Cell><Data ss:Type="String">LOC</Data></Cell>
<Cell><Data ss:Type="String">REMARKS</Data></Cell>
</Row>
<Row>
<Cell><Data ss:Type="String">marks</Data></Cell>
<Cell><Data ss:Type="String">Young One</Data></Cell>
<Cell><Data ss:Type="String">marks brothers</Data></Cell>
<Cell><Data ss:Type="String">1000</Data></Cell>
<Cell><Data ss:Type="String">marks</Data></Cell>
<Cell><Data ss:Type="String">nagroupbd</Data></Cell>
<Cell><Data ss:Type="String">1280</Data></Cell>
<Cell><Data ss:Type="String">200</Data></Cell>
<Cell><Data ss:Type="String">100</Data></Cell>
<Cell><Data ss:Type="String">100</Data></Cell>
<Cell><Data ss:Type="String">CARTONS</Data></Cell>
<Cell><Data ss:Type="String">583.2</Data></Cell>
<Cell><Data ss:Type="String">100</Data></Cell>
<Cell><Data ss:Type="String">Kgs</Data></Cell>
<Cell><Data ss:Type="String">180 X 180 X 180</Data></Cell>
<Cell><Data ss:Type="String">OKLAND</Data></Cell>
<Cell><Data ss:Type="String">marks</Data></Cell>
<Cell><Data ss:Type="String">Men's Product</Data></Cell>
<Cell><Data ss:Type="String">C 12908</Data></Cell>
<Cell><Data ss:Type="String">2016-02-02</Data></Cell>
<Cell><Data ss:Type="String">2016-02-02</Data></Cell>
<Cell><Data ss:Type="String">Max20</Data></Cell>
<Cell><Data ss:Type="String">2016-02-02</Data></Cell>
<Cell><Data ss:Type="String">ndsfjlsdajflka

dfasdf</Data></Cell>
</Row>
</Table>
</Worksheet>
</Workbook>

My Jquery ajax call is below this type code 我的Jquery ajax调用在此类型代码下方

$(document).on("click","button[name=excelreceivedreports]",function() {
 //alert("work");
     url = getURL()+'/ajax/get_excelExport_receivedreports.php';

     fdr = $('select[name=forwarder]').val();
     frdt = $('input[name=fromdate]').val();
     todt = $('input[name=todate]').val();
     var data = "";                                
      $('.plus-loader').animate({
          'opacity': 1
      },500);
      $.post(url, {forwarder:fdr,fromdt:frdt,todate:todt },function(msg){

            $('.plus-loader').animate({
          'opacity': 0
      },500);
          alert(msg);
      //$(".data-excel").html(msg);    
      }); 
});

Can you please tell me how I can convert this alert message to download excel file. 您能否告诉我如何将此警报消息转换为下载Excel文件。 I want it on ajax call. 我想要在ajax电话上。 Thanks in advance. 提前致谢。

You can add a button which can save the output into an excel file. 您可以添加一个按钮,该按钮可以将输出保存到excel文件中。 But for that your response have to be well formatted. 但是为此,您的回复必须格式正确。 For example : 例如 :

$("#btnExport").click(function (e) {
    window.open('data:application/vnd.ms-excel,' + $('#dvData').html());
    e.preventDefault();
});  

See this example if you are not sure about it. 如果不确定,请参见此示例。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM