2017-01-23 127 views
0

我想用jQuery打開excel表,但我也需要發送數據到該php文件以及POST。我正在使用phpexcel類來做到這一點。我沒有使用phpexcel的問題,但試圖打開窗口併發布數據是問題所在。發送數據從jQuery發送到phpexcel

這下一行確實打開我的excel文件

window.open('boo.php','_self'); 

行,所以我嘗試了下面的代碼

$.post("boo.php", { 
    BANANA: "A banana", 
    CODE: "excel" 
    },function(data){ 
    var w = window.open('','_self'); 
    w.document.write(data); 
    w.document.close(); 
}); 

以上肯定是,翻開新的一頁,它並派我的兩個後期變數,但有一個問題。

而不是我的Excel表打開它張貼亂七八糟的頁面。

所以我想我的第二塊代碼,在某種程度上是插入標題之前,然後phpexcel失敗。

我的php代碼此刻非常簡單,因爲如果你有問題,最好簡化它。

<?php 
include_once 'core/bananas.php'; 
$excel = new globalExcel(); 
$excel->test(); 
?> 

那麼有沒有辦法打開我的phpexcel文件併發布數據給它,而不用擰上頭?

+0

這個函數做什麼'vpage()' – RiggsFolly

+0

這沒關係。它只是獲取一個頁面並將其作爲變量發送。我可以堅持任何東西,甚至香蕉。請忽略vpage(),因爲它只是一個對問題沒有任何影響的函數。基本上我的vpage函數獲取當前頁面,以便我的excel php知道要運行什麼。 –

+1

那麼它是什麼在收集_gibberish_它可能是非常相關 – RiggsFolly

回答

0

對我發佈我的解決方案,但它不是我的問題的確切答案。我想通過jQuery來完成。

我之前做過的項目是發佈到php並創建會話變量,然後使用window.open打開excel頁面,返回jQuery。 雖然這不是一個選項,因爲我需要發佈變量而不是會話變量,因爲我從2個不同的地方調用相同的代碼。

我的解決方案不是使用jQuery來發送信息,而是一個隱藏的窗體。所以我不回答我的問題,但提供了一個可能的替代解決方案。

<form id="excel" action="boo.php" method="post" style="display:none"> 
    <input type="hidden" name="VPAGE" value="mileage"> 
    <input type="hidden" name="CODE" value="excel"> 
</form> 
<button class="btn btn-default btn-xs" form="excel"><i class="fa fa-file-excel-o" aria-hidden="true"></i> Excel</button> 

正如我所說這不是我想要的解決方案,但它確實有效。所以,如果其他人被卡住了,我就把這個答案。

如果有人知道在jQuery中這樣做的方法,我仍然很樂意看到答案。