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/

你可能感兴趣的:(fileupload)