fileupload上传 and IE8 and VS2008 实现图片预览[new Name:经典的Fakepath错误]

[new Name:经典的Fakepath错误]
复制代码
FileUpload控件上传文件控件取本地路径显示为C:\fakepath
MD 就是因为这个问题搞得我一晚上,每做多少事情,终于在GG的强大搜索下,被我 
'法科' 了!
    
<form id="form1" runat="server">
        
<div>
            
<asp:FileUpload ID="FileUpload1" onchange="CheckFileUp(this)" runat="server" />          
            
            
<asp:HiddenField ID="hiddenUp" runat="server" />
            
<br />
            
<br />
            
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div>
    
</form>
 转载请注明 http://netsos.cnblogs.com/
<script type="text/javascript">
    
  function CheckFileUp(FileUpload)
  {  
    var mime
=FileUpload.value;
    mime
=mime.toLowerCase().substr(mime.lastIndexOf("."));
    
if(!(mime==".xls"))//mime==".xls" || mime==".gif" || mime==".bmp"
    {
        alert(
"aaaa");//仅支持JPG/GIF/BMP格式 
        var e=document.getElementById("FileUpload1");
        e.outerHTML
=e.outerHTML;
    }
    
else
    {
        document.getElementById(
"hiddenUp").value=FileUpload.value;
        alert(document.getElementById(
"hiddenUp").value)
    }
  }
    
</script>


以上是页面,在上传文件路径时总显示C:\fakepath\
*.jpg文件啦,总之前面全替换成C:\fakepath,

[处理办法]

首先IE8,他比较的严格,没想到一个网站里面的上传图片时用JavaScript预览本地图片的功能失效了,图片总是显示错误,用alert()看了下图片的路径居然变成了C:\fakepath\
*.jpg,真实的路径被C:\fakepath\取代了,于是在网上开始找解决方案。
原来是因为IE8增加了安全选项,
默认情况下不显示上传文件的真实路径,
进入internet选项,修改下设置即可显示真实的文件路径。

以下就是操作步骤:
工具 
-> Internet选项 -> 安全 -> 自定义级别 -> 找到“其他”中的“将本地文件上载至服务器时包含本地目录路径”,选中“启用”即可。
 转载请注明 http://netsos.cnblogs.com/

 

复制代码

 [new Name:经典的Fakepath错误] 转载请注明 http://netsos.cnblogs.com/

posted @   hevily  Views(2124)  Comments(0Edit  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示