显示所选文件而不回发

nia*_*her 2 html jquery file-upload

我有一个<input type="file">用户选择图像文件的地方.是否可以在页面上显示此图像而无需先将其实际上传到服务器?基本上我想要做的是使用用户计算机上的本地文件.

PS - 我正在使用JQuery.

Tat*_*nen 5

这是不可能的,甚至引用文件使用file://将无法正常工作,因为当您从文件输入框中获取值时,您只获取文件名,而不是路径.因此无法知道图像的位置.要使其工作,您必须使用基于Flash的上传器.

这肯定是一种安全措施,因为Internet Explorer 确实为您提供了一条路径,唯一的事情就是始终如此c:\fakepath\filename.png.我猜浏览器正在阻止JavaScript从文件系统中获取任何有意义的信息.

尝试上传文件时不同浏览器的返回值C:\test.txt:

  • Firefox 3.5.6
    test.txt

  • Chrome 3.0.195.38
    test.txt

  • Opera 10.00
    C:\fake_path\test.txt

  • Internet Explorer 8
    C:\fakepath\test.txt