我有一個表格,我通過jQuery's .ajaxSubmit()
函數提交。這種形式包括一個文件控制,它已被提出作爲一個可能的失敗點,如果所選文件被重命名,刪除或以其他方式在提交表單之前無法訪問,表單可能會或可能不會基於瀏覽器提交。儘管未能提交是預期的行爲,但用戶沒有指示表單未能提交或爲什麼,這被視爲限制表演。更糟糕的是,在IE中,表單提交時沒有任何文件數據;雖然我可以在服務器端捕捉到這一點,但如果表單完全沒有提交,那將會更理想。文件丟失在文件系統中,抓住表單提交
我知道JavaScript能夠知道任何有關文件系統的知識,而且我也同樣意識到,與跨瀏覽器兼容性有關的任何事情都存在一些不重要的問題。當表單提交失敗或者jQuery正在吞嚥它時,Firefox似乎沒有拋出任何異常。 IE蹣跚而行。我想看看是否有辦法可以捕捉到表單沒有提交或提交無效文件的事實。我還想在提交之前捕捉文件字段是否存在問題。
任何想法?
這不會升到答案的層次,更像是思考食物,所以我會將它作爲評論發佈。您可以通過File API(http://www.w3.org/TR/file-upload/)僅在最近的瀏覽器提交時進行一些基本驗證。除了IE之外,對API的支持一般都很好,它在版本10之前並沒有變得可用。 – dgvid
+1,很好的問題。對於使用Struts2的fileUploading的一般用途提示,請隨時閱讀:http://stackoverflow.com/questions/15957470/struts2-sform-element-trims-the-surl-parameter-in-the-action-attribute/ 15968166#15968166 –
http://stackoverflow.com/questions/10471866/html5-file-api-simple-check-if-file-exists –