2010-03-31 45 views

回答

1

由於JavaScript無法訪問本地文件系統,因此Ajax(使用JavaScript定義)無法執行文件上載。有些似乎使用Ajax的解決方法,比如iframe或使用Flash。

狩獵谷歌周圍,你會發現一些東西。有更多的庫(例如YUI)將這些放在一起。

0

要通過Ajax上傳文件,您需要使用iframe或Flash的解決方法。

我推薦你Uploadify,它使用flash做上傳,並使用jQuery。我喜歡它有很多設置,它爲隊列處理提供了一個很好的默認樣式。只需按照說明在您的網站中進行設置即可。

在PHP腳本中,您將收到$ _FILES數組中的文件,就像它是通過表單進行的正常提交一樣,默認名稱是'Filedata',因此您可以通過$ _FILES [ 'Filedata上']。然後僅回顯Ajax請求(JSON或XML)的響應,並執行Uploadify'onComplete'事件的一些JS代碼。

0

您可以嘗試使用HTML 5的文件上傳API,這將要求他們將文件拖放到瀏覽器窗口中。在這裏閱讀更多:http://www.appelsiini.net/2009/10/html5-drag-and-drop-multiple-file-upload

此外,你可以做谷歌齒輪(這需要安裝IE瀏覽器,但在Chrome上默認)同樣的事情。

可以檢測到任何一個的出現,並優雅地降級。

+0

有關Google Gears文件上傳API的更多信息:http://www.appelsiini.net/2009/10/drag-and-drop-file-upload-with-google-gears – 2010-03-31 08:06:07

相關問題