当前位置: 代码迷 >> ASP.NET >> 谷歌下,js获取<input type="file" . />绝对路径失败,被修改成C:\fakepath\.形式,该怎么解决
  详细解决方案

谷歌下,js获取<input type="file" . />绝对路径失败,被修改成C:\fakepath\.形式,该怎么解决

热度:4092   发布时间:2013-02-25 00:00:00.0
谷歌下,js获取<input type="file" ... />绝对路径失败,被修改成C:\fakepath\...形式
RT,
jq写的 $("input[type='file']").val(); 在ie下没出现问题,可是谷歌里面被修改了,求经验大手意见

------解决方案--------------------------------------------------------
C:\fakepath\.不是完全正确的吗 ?物理路径就是这样的啊
<input type="file" ... />不能使用虚拟路径的,哪来的绝对路径一说?
------解决方案--------------------------------------------------------
你用这种方式来解决,本身就是不太规范的。
IE不同版本,firefox不同版本,chrome不同版本,surfer不同版本等等浏览器,再加上不同的操作系统,比如在linux中,在unix中,在windows的不同版本中,获取到的东西或多不少不太一样。你不要指望用这种方式可以一劳永逸解决所有浏览器。

不知道你在这里获取这个的目的是什么。
------解决方案--------------------------------------------------------
探讨

function getPath(obj){
if(obj){
//ie
if (window.navigator.userAgent.indexOf("MSIE")>=1)
{
obj.select();
return document.s……

------解决方案--------------------------------------------------------
如果你只是在特定os下,在特定浏览器下,那就按照你说的做。其实主要取决于user
------解决方案--------------------------------------------------------
探讨

刚刚找到分享下。http://www.cesclub.com/bw/jishuzhongxin/Webjishu/2011/1129/16284
可能是我描述的不清楚吧,亲,我只需要得到一个兼容的获取路径的方案,置于平台不考虑,只是个网站的某个功能而已哦,非常感谢您的回答,我再测试测试下
引用:

如果你只是在特定os下,在特定浏览器下,那就按照你说的做。其实……

------解决方案--------------------------------------------------------
非IE都不不能直接通过$("input[type='file']").val()得到路径的,这是安全性设置的问题的
即使是IE,也是不能直接得到的,这需要修改设置才能得到
只有下面的设置设置成允许才能得到
  相关解决方案