在html页面中上传附件:
代码:
用var fileName = document.getElementById("file").value;得到file的上传路径,但是在IE8或更高版本的IE中得到的路径是:c:\fakepath\xxx路径,怎么才能得到上传的文件路径那?
请高手帮助
不行的 在主流浏览器 出于安全原因是拿不到的绝对路径的 如果你要拿ie8及以后的相对路径可以把c:\fakepath substr掉
[url]http://acidmartin.wordpress.com/2009/06/09/the-mystery-of-cfakepath-unveiled/[/url]
我遇到过这个问题,博客里面写了,请看这里:
IE8上传文件时文件本地路径变成"C:\fakepath\"的问题
[url]http://yunzhu.iteye.com/blog/1116893[/url]
flex可以获取文件的绝对路径,[url]http://blog.sina.com.cn/s/blog_938d86e90100xzrb.html[/url]
那么在JS代码中我就可以这样来获取真实的文件路径:
[code="javascript"]var file_upl = document.getElementById('file_upl');
file_upl.select();
var realpath = document.selection.createRange().text; [/code]
[quote]本的IE中得到的路径是:c:\fakepath\xxx路径,怎么才能得到上传的文件路径那? [/quote]
[quote]但是这样我只能取到文件名,然后还是读取不到这个文件呀,也就无法读取这个文件的内容[/quote]
怎么感觉偏题了,还是问题描述错了
在浏览器-属性-安全设置-自定义级别中,其他里有包含上传路径,一般都是禁止的,你把它打开就可以了
最好不要这样做,对于浏览器来说就算你站IE6 7 8兼容了,FF也不会兼容,就算FF兼容了,CHROME也不会兼容。(你总不能给客户说把你的浏览器安全级别设置低些?)我说的意思是浏览器端获取路径没有意义。建议换思路。