较老的浏览器用于允许无限制地访问完整的路径,所以这不是不可能的,但由于安全性问题,您的最佳答案将是一个解决方法.
IE浏览器
HTA应用
如果你在本地工作,一个选择是你可以作为HTML应用程序来运行你的页面.不幸的是,它使用Internet Explorer作为引擎.但是如果你可以摆脱一个HTA,这样做就是你想要的:
HTA - Test file可信站点
一个更好的选择,只是使用Internet Explorer,然后将您的页面添加到Internet Explorer的受信任的站点.那么你的解决方案就像:
< input type =“file”id =“fileUpload”onchange =“alert(this.value)”>
以下是将网站添加到受信任站点的方法:
自定义安全级别
您还可以在Internet Explorer中全局启用此行为:
火狐
我在浏览器中尝试过,似乎是一个不存在的属性.我无法找到有关如何利用此属性的任何文档.但是,这是一个值得注意的财产,以防万一它变得有用.
HTML5
在HTML5中,您可以编写this.files [0]来引用File对象.属性包括“name”和“lastModifiedDate”,“size”和“type”,如下所述:
https://developer.mozilla.org/en-US/docs/Web/API/File
在HTML5中,您实际上可以使用blob并从所选文件创建一个对象网址并显示预览.这可以通过URL.createObjectURL(…)完成,然后创建一个图像并将其src设置为生成的临时url.见this fiddle.(credit goes to this post)
最后,你可能会非常喜欢: