Php 使用zend在jquery mobile framewrok中下载CSV文件
我正在使用zend框架使用jquery移动框架做项目。我有页面可以下载csv格式的报告。我可以从桌面版下载。但是移动版本中的相同页面在ajax中运行,这是因为jquery移动结果Php 使用zend在jquery mobile framewrok中下载CSV文件,php,zend-framework,jquery-mobile,Php,Zend Framework,Jquery Mobile,我正在使用zend框架使用jquery移动框架做项目。我有页面可以下载csv格式的报告。我可以从桌面版下载。但是移动版本中的相同页面在ajax中运行,这是因为jquery移动结果未定义带有空白页面 例如,我在单击下载按钮时调用它。这将在reportcontroller中调用downloadtransactionAction,然后最终给出csv文件。 呼叫正在移动版本中进行,但无法看到下载文件窗口 下面是代码 public function downloadtransactionAction()
未定义带有空白页面
例如,我在单击下载按钮时调用它。这将在reportcontroller中调用downloadtransactionAction,然后最终给出csv文件。
呼叫正在移动版本中进行,但无法看到下载文件窗口
下面是代码
public function downloadtransactionAction(){
$preview_result = getmySessionData('preview_result')->preview_key;
//print_obj($preview_result);
$myFile = "TRANSACTION_" . time() . ".csv";
header("Content-Disposition: attachment; filename=\"$myFile\"");
header("Content-Type: application/vnd.ms-excel; charset=UTF-16LE");
$out = fopen("php://output", 'w');
//$csvData = array('Warehouse Id', 'Name','Item No','Minimun Stock','Current Stock');
$csvData = array('No','DATE','USER', 'TRADE TYPE','AMOUNT');
$o = fputcsv($out, $csvData, ',', '"');
$count = 1;;
foreach($preview_result as $key => $value)
{
$csvData = array();
$csvData = array($count,date('Y/m/d',strtotime($value['date'])),$value['current_admin_name'],($value['trade_type'])?'WithDraw' : 'Deposit',$value['amount']);
$o = fputcsv($out, $csvData, ',', '"');
$count++;
}
fclose($fh);
// DOWNLOAD CSV
echo $out;
die;
}
我需要下载移动版的csv,就像在桌面版一样
我在这方面做错了什么?我使用下面的代码禁用jquery mobile framework中的ajax
<script type="text/javascript">
// do not handle links via ajax by default
$(document).bind("mobileinit", function () { $.mobile.ajaxEnabled = false; });
</script>
//默认情况下,不要通过ajax处理链接
$(document.bind(“mobileinit”,函数(){$.mobile.ajaxEnabled=false;});
这将禁用页面中的ajax并重定向到单击的页面