我是Javascript和PHP的新手,所以我会尽量保持清晰。
我编写了一个PHP文件,当我直接在浏览器中打开它时,该文件运行正常。但是,当我从我的JS调用PHP文件时,它不起作用。
这是PHP:
<?php
// remove the headers at start for a reset
header_remove("Content-type");
header_remove("Content-Disposition");
// here comes everything that will be in $myfile
header("Content-type: application/gpx+xml");
header("Content-Disposition: attachment;Filename=route.gpx");
echo $myfile;
?>
这就是我用来调用JS中的PHP文件:
function fuDownload(){
$.get('phpfile.php');
}
单击按钮时会调用fuDownload函数。
答案 0 :(得分:0)
http://api.jquery.com/jQuery.get/
jQuery.get( url [, data ] [, success ] [, dataType ] )
$.get( "test.php" );
请求test.php页面,但忽略返回结果。
使用$.get( "test.php", function( data ) { ... } )
,
$.get( "test.php" ).done(function( data ) { ... });
或$( "#result" ).load( "test.php" );
(http://api.jquery.com/load/)
答案 1 :(得分:0)
如果您尝试使用标头生成文件,那么$ .get就不是正确的功能。
尝试:
window.location.href = 'phpfile.php';
你应该使用$ .get在添加元素时与DOM交互,但是在发送任何实际输出之前必须调用header(),在你的情况下(假设你只是尝试自动开始下载)a标准链接将正常工作。