作者caifu (C將。)
看板Ajax
標題[問題] JQUERY讀取外部文字檔 ie有問題
時間Fri Jul 10 17:55:17 2009
(問題解決囉!! 謝謝大家!! ^^)
因為我要讀取外部檔案內容
所以我的作法是參考
http://blog.linym.net/archives/165
這個網頁所講的來寫
以下是我簡化後的程式碼:
--
var allinfo = "";
function update() {
$.get('readfile.php', function(data){ allinfo = data; });
... // 中間檔案處理省略
setTimeout(update, 1000);
}
update();
--
流程大概是網頁進來後執行update()讀取外部檔案並做顯示,且每秒更新
也就是說readfile.php檔裡的來源資料也是會不斷變動的
我現在遇到的問題是
firefox下執行完全沒問題
網頁顯示的資料每秒都會更新
但ie下執行資料卻完全不更新
我測過不是setTimeout的問題了
確定是$.get方面有問題
但又不知道怎麼改才能讓ie也能順利執行…
麻煩各位了,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.233.210.218
1F:→ zhe01:試試 setTimeout("update()",1000); 加上引號 07/10 18:58
2F:→ caifu:zhe01大,你說的方式我有試過了 應該不是這個問題.. 07/10 22:48
3F:→ caifu:一開始我也猜過是setTimeout的問題,但我在function內加個 07/10 22:49
4F:→ caifu:alert,每秒確實會跳出來。因此我才認為是$.get的問題.. 07/10 22:50
5F:→ caifu:但就是一直不知道怎麼改才能讓ie正常執行… ~"~ 07/10 22:50
6F:→ adahsu:應該是 IE Cache 問題... 其實 Fx 也一樣有類似問題啦... 07/10 22:58
7F:→ caifu:請問IE CACHE是什麼問題? 另外,FIREFOX執行沒問題 @@" 07/10 23:57
8F:→ zhe01:cache 問題嗎?get前加上 $.ajax({cache:false});看看 07/11 01:49
9F:→ TonyQ:在 request parameter上加上 date:new Date() 看看. 07/11 09:07
10F:→ TonyQ:跟cache:false 一樣意思 07/11 09:08
感謝樓上幾位大大給的方向
小弟我就找了
http://tinyurl.com/mgrtvk這篇來看
果然是cache的問題!!
以下是更正後的程式碼:
--
var allinfo = "";
function update() {
$.ajaxSetup({cache:false}); // 加了這行就可以囉! ^_<
$.get('readfile.php', function(data){ allinfo = data; });
... // 中間檔案處理省略
setTimeout(update, 1000);
}
update();
--
現在不論IE、FIREFOX、OPERA上都可以正常執行囉!
希望能幫到以後遇到同樣問題的板友! ^^
※ 編輯: caifu 來自: 125.233.209.25 (07/11 10:09)