简体   繁体   中英

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. 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

$(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. I want it on ajax call. Thanks in advance.

You can add a button which can save the output into an excel file. 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.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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