亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何從Firefox 3的HTML輸入表單中獲取文件路徑

如何從Firefox 3的HTML輸入表單中獲取文件路徑

千萬里不及你 2019-06-16 15:01:33
如何從Firefox 3的HTML輸入表單中獲取文件路徑我們有一個簡單的HTML表單<input type="file">,如下所示:<form> ??<label?for="attachment">Attachment:</label> ??<input?type="file"?name="attachment"?id="attachment"> ??<input?type="submit"></form>在IE7中(可能還有所有著名的瀏覽器,包括舊的Firefox 2),如果我們提交一個像‘/server 1/path/to/file/filename’這樣的文件,它會正常工作,并給出文件和文件名的完整路徑。在Firefox 3中,它只返回“文件名”,因為它們的新的“安全特性”可以截斷路徑,正如Firefox錯誤跟蹤系統中所解釋的那樣(https:/bugzilla.mozilla.org/Show_bug.cgi?id=143220)我不知道如何克服這個“新特性”,因為它會導致我的web應用程序中的所有上傳表單都停止在Firefox 3上工作。有人能幫助找到一個單一的解決方案來獲取Firefox 3和IE7上的文件路徑嗎?
查看完整描述

3 回答

?
MMMHUHU

TA貢獻1834條經驗 獲得超8個贊

對于Firefox作品中的預覽,在第一個示例中,附件是附件元素的對象:

           if (attachment.files)
             previewImage.src = attachment.files.item(0).getAsDataURL();
           else
             previewImage.src = attachment.value;


查看完整回答
反對 回復 2019-06-16
?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

實際上,就在FF3發布之前,我做了一些實驗,FF2只發送文件名,就像Opera 9.0一樣。只有IE發送完整的路徑。這種行為是有意義的,因為服務器不需要知道用戶將文件存儲在計算機上的位置,這與上傳過程無關。除非您正在編寫Intranet應用程序并通過直接網絡訪問獲得文件!

已經改變的是FF3不再允許從JavaScript訪問文件路徑(這是您所指向的bug項的真正要點)。而且不會讓輸入/粘貼路徑,這對我來說更煩人:我有一個shell擴展名,它將文件的路徑從Windows Explorer復制到剪貼板,并且我經常以這種形式使用它。我使用DragDropUpload擴展解決了這個問題。但我擔心這會變成一個離題的話題。

我想知道您的Web表單正在做什么來停止使用這種新的行為。

[編輯]在閱讀了Mike鏈接的頁面后,我確實看到了內部網使用路徑(例如標識用戶)和本地用途(顯示圖像預覽、文件的本地管理)。用戶Jam-es似乎為nsIDOMFile提供了一個解決方案(尚未嘗試)。


查看完整回答
反對 回復 2019-06-16
  • 3 回答
  • 0 關注
  • 495 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號