回答
如果你想要做拖和下降,則可以使用從HTML5的新drag and drop stuff(在Firefox和Chrome支持作爲)。這並不需要input type='file'
。
否則,您無法在沒有input type='file'
元素的純HTML + JavaScript中執行此操作。由於thejh points out(在一個現在被刪除的答案中),你可以做到這一點,而不需要使用File API實際提交表單,但仍然需要使用input type='file'
(儘管它不需要提交表單和刷新頁面)。使用JavaScript和File API讀取文件的Here's an example(這裏是SO);從那裏,通過ajax發送它是一個微不足道的步驟。這對於在支持File API的瀏覽器(進度條,早期檢測和報告不支持的文件類型,早期檢測和報告太大的文件等)上提供增強的用戶體驗很有用。
當然,您可以使用非HTML/JavaScript技術(如Flash和(帶符號)Java小程序)執行此操作,但如果您正在尋找一種「純粹的」無插件機制,那麼舊版本input type='file'
仍然是你唯一的選擇。儘管如此,您可以通過支持它的瀏覽器上的File API逐步增強它,這很有用。
下垂者是否願意提供一些有用的反饋? – 2010-12-12 05:30:01
感謝您的詳細解答。 – shevski 2010-12-12 11:14:17
您可以通過FLASH做到這一點,但我不認爲這是在HTML中任何其他方式。
爲什麼你不想使用輸入?
無論如何,檢查出uploadify(漂亮的jQuery插件),可能會有所幫助:http://www.uploadify.com/
是的,我用過這個。是否將默認輸入框更改爲圖像。沒有問題。 – DMin 2010-12-11 23:42:21
- 1. 自定義HtmlHelper方法,生成一個<input type =「range」> HtmlString
- 2. 自定義<input type =「tel」>
- 3. 我可以使用<input type =「text」>來模擬<input type =「file」>嗎?
- 4. HTML <input type =「text」... as <input type =「file」
- 5. 定製<input type =「file」>?
- 6. 如何自定義html消息<input type =「file」>?
- 7. 問題自定義<input type =「search」...> jquery移動
- 8. 另一個ASP:Textbox vs <input type =「text」>
- 9. <input type =「file」/>
- 10. 我們可以更改<input type =「file」>樣式嗎?
- 11. <input type =「submit」/>和<input type =「text」/>
- 12. <input type ='button'/>和<input type ='submit'/>之間的區別
- 13. 製作一個<i>標記一個<input type ='button'>
- 14. 使用Play生成<input type =「search」/>!框架
- 15. 增加<input type =「text」>
- 16. 驗證<input type =「date」>
- 17. 更改<input type =「submit」>
- 18. 爲<input type ='submit'>
- 19. <input type =「text」/>換行
- 20. <type =「input」runat =「server」>
- 21. 清除<input type = file>
- 22. HTML5 <input type =「date」> change
- 23. <input type =「file」> EMPTY
- 24. HTML5 <input type ='range'>
- 25. 使用<input type = number>
- 26. 製作一個<input type =「text」/>只有數字可以輸入嗎?
- 27. 我可以用一個定義來調用操作<<
- 28. 現在可以使用<input type =「tel」/>嗎?
- 29. PouchDB <input type =「file」multiple /> - 可以工作嗎?怎麼樣?
- 30. 可以HAML渲染<INPUT TYPE =所需的 「文本」>
只是出於好奇 – shevski 2010-12-11 22:46:55
你的目標是什麼? – ynh 2010-12-11 22:48:08
如果你看看元素髮布到服務器上,你會發現它們中的很多被解析爲數組或簡單類型,但是文件只能使用該標籤發送,我認爲這有些問題。 (您甚至可以在瀏覽器地址欄中將文本發送到服務器)。 – shevski 2010-12-11 22:50:26