作者UniFish (贡贡老盃)
看板Ajax
标题Re: [问题] post值之後, 用php readfile下载档案失败
时间Thu Aug 11 23:33:49 2011
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.46.75
1F:推 UniFish:你可以查查各web server传档的content-type是什麽 08/11 22:51
2F:→ UniFish:像是apache是X-Sendfile,交给web去传档案会比较好 08/11 22:51
3F:→ UniFish:不过也是不清处$.ajax会怎麽处理 08/11 22:52
4F:→ UniFish:以你的解法来说,可以在ajax的success事件中加上: 08/11 22:52
5F:→ UniFish:document.location.href = url; 这样就会自己跳你要的LINK 08/11 22:53
6F:→ wzbird:请问你的意思是还是content-type的问题吗? 08/11 23:02
7F:→ wzbird:那为什麽单独执行quering.php可以下载 08/11 23:03
8F:→ wzbird:但是用JQ去呼叫他就不行呢? 感谢回应 08/11 23:03
9F:推 UniFish:应该这麽说,我在写传档时都会叫webserver去传,不用PHP传 08/11 23:12
10F:→ UniFish:而都是跳blank出来就会自动下载了 08/11 23:13
11F:→ UniFish:在回你那篇时,我没有留意到你的主程式是用ajax去传, 08/11 23:14
12F:→ UniFish:$.ajax对於回传值处理有限制,像是HTML、JSON之类的,处理 08/11 23:15
13F:→ UniFish:方式都不一样,这部份可能要看jQuery的原始码~(爆) 08/11 23:16
14F:→ UniFish:我比较倾向单纯的作法,像是叫ws去传、用FORM POST或GET 08/11 23:17
15F:推 UniFish:我回文好了XD 08/11 23:20
首先先说声不好意思,你原文我只看quering.php XD
看到content-type不是平常在用的就直接回了~
没有留意到你是用ajax call
jQuery的ajax的回传值有限xml, json, script, html
四种处理方式都不一样,你的CODE是用预设值:HTML
html的处理方式很简单~就直接把收到的东西喷出来就好了
而浏览器要跳出下载的视窗是要在取页面时,
送出GET请求,而收到的header的Content-Type是专门用在下载的
才会触发浏览器作这个动作
对於ajax的「局部更新」,浏览器是不会理的~
--
好 吗 ▲ ◤ ˋ ◤ ˋ ▎ φhacoolman
好 养一只边境牧羊犬, 吗 / ● ● \ ▲ 养嘛养嘛养嘛
好就能常常换新手机喔! 吗 ▊/ ◣ ◤ ◣ ◤ \ ▏ 嘛养嘛养嘛
好 吗 │ │ ▍ 嘛养嘛养嘛
好边境不养吗好边境不◥吗▊ \ │ ▎ (●ω●)
好边境不养吗好边境不养吗 \ ︶︶ / ▏嘿~嘿~嘿~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.254.126.215
16F:推 wzbird:感谢热心回覆! 08/11 23:40