`

IE8上传文件时javascript取文件的真实路径的问题("C:\fakepath\xxxxx )

阅读更多

自从IE8出来以后,文件上传时路径获取就出现了问题

在用js获取路径时:var file= document.getElementById('..').value;

然后输出alert(file); 此时得到的路径是C:\fakepath\xxx.jpg 而不是文件的真实路径

这到底是怎么回事呢?

原来是因为IE8以上的版本都提升了安全级别,默认是不会获取文件的真实路径的

都是用fakepath代替了。

怎么解决这个问题呢?

首先可以通过修改浏览器的安全级别,步骤是:

工具 -> Internet选项 -> 安全 -> 自定义级别 -> 找到“其他”中的“将本地文件上载至服务器时包含本地目录路径”,选中“启用”即可。

当然上述的方法肯定不可取,总不能让每一个用户都修改ie配置吧,下面给出一种用js代码修改的方法

 兼容ie ,firefox全系列

  1. function getPath(obj) 
  2.   if(obj) 
  3.     { 
  4.     if (window.navigator.userAgent.indexOf("MSIE")>=1) 
  5.       { 
  6.         obj.select(); 
  7.       return document.selection.createRange().text; 
  8.       } 
  9.     else if(window.navigator.userAgent.indexOf("Firefox")>=1) 
  10.       { 
  11.       if(obj.files) 
  12.         { 
  13.         return obj.files.item(0).getAsDataURL(); 
  14.         } 
  15.       return obj.value; 
  16.       } 
  17.     return obj.value; 
  18.     } 
分享到:
评论
1 楼 wodeing 2016-06-27  
666666  直接忽悠人的

相关推荐

    IE8上传文件时javascript取文件的真实路径的问题(\"C:\\fakepath\\xxxxx )

    标题 "IE8上传文件时javascript取文件的真实路径的问题(\"C:\\fakepath\\xxxxx )" 描述了一个在使用Internet Explorer 8 (IE8) 浏览器进行文件上传时遇到的技术挑战。在这个问题中,JavaScript无法获取到文件的实际...

    解决fakepath的js

    自己项目中遇到上传时fakepath的问题,通过这个js解决

    chrome上传图片

    Chrome和其他现代浏览器不会显示文件的真实路径,而是使用"C:\fakepath"这样的虚拟路径来防止用户信息泄露。这种行为符合Web安全的最佳实践,但同时也可能导致开发者在设计文件选择界面时遇到一些挑战。 要解决这个...

    获取真实路径地址

    js获取真实路径 IE 火狐浏览器的真实路径地址。

    详解nodejs实现本地上传图片并预览功能(express4.0+)

    写在前面:计划实现图片上传预览功能,但是本地图片上传所获得路径为 C:\fakepath\”+文件名的形式,得不到文件真实路径,所以无法直接预览,于是采用将图片上传至服务器,传回服务器路径,实现预览。前端采用通过...

    js获取上传文件的绝对路径实现方法

    但是,描述中也提到IE浏览器中可以进行安全设置的调整,来允许显示文件上传时的真实路径。 具体操作步骤如下: 1. 打开IE浏览器。 2. 进入"Internet选项"。 3. 选择"安全"标签页。 4. 点击"自定义级别"按钮。 5. ...

    js+ajax实现获取文件大小的方法.docx

    通常,我们无法直接通过 JavaScript 获取到用户选择的文件的实际路径,只能获取到一个模拟路径,如 `c:/fakepath/`。这是因为浏览器不希望网站获取到用户的本地文件系统信息。因此,我们需要借助其他方法,如 AJAX,...

    图片上传兼容IE

    然而,由于历史原因,Internet Explorer(简称IE)浏览器在处理某些Web技术时存在兼容性问题,这使得图片上传在IE上可能会遇到挑战。本文将深入探讨如何实现图片上传功能并确保其在IE浏览器上的兼容性。 首先,我们...

    IE和FF的图片上传预览

    文件路径的处理可能是这样的:对于IE,代码会获取到一个类似于"C:\fakepath\image.jpg"的假路径;而FF则会返回实际的文件系统路径,但出于安全考虑,开发者不能直接访问。因此,对于FF,我们只需要关注File API即可...

    谷歌浏览器临时文件路径修改工具

    然而,随着日常使用,浏览器会产生大量临时文件,这些文件默认存储在系统盘上,如C盘。随着时间的推移,这些临时文件会积累并可能导致硬盘碎片,从而影响计算机的整体性能,特别是当系统盘空间有限时。 临时文件...

    C_fakepath_原料药注册生产现场检查要求及问题分析.pptx

    C_fakepath_原料药注册生产现场检查要求及问题分析.pptx

    ReadINI:用.NET读取INI文件。 包含DLL文件

    #读取INI ReadINI类,用于读取您的.ini文件#用法: 将数据写入您的.ini文件var rini = new ReadINI ( @" C:\FakePath\Settings.ini " );rini . Write ( " Some Key " , " Some Value " , " Some Section. !Default...

    Axure教程:如何实现图片上传 – 自动预览.docx

    该功能可以在 Axure 原型设计中使用,解决了浏览器安全机制下文件路径被 fakepath 代替的问题。 首先,需要在页面上放置三个元件:一个文本框、两个矩形。文本框需要设置输入类型为“文件”,中间的大矩形用于显示...

    使用正则表达式 exec 获取字符串中的汉字

    要求:仅获取attr中的 “编辑发起状态的执行人表单” ,路径C:\fakepath\是不固定的,可以是C:\fakepath\hhh\hhhh\ 解决: var attr = C:\fakepath\编辑发起状态的执行人表单.png attr = title.split(".")[0]; // ...

    Javascript 使用ajax与C#获取文件大小实例详解

    在上传之前可以有个判断,对上传的文件有所控制,因为js控制文件大小(JS获取文件大小)有些问题,具体大家试下就知道了,在此整理了一下ajax的获取文件大小的方法,比较好用,再调试过程中,出现了c:/fakepath/ 的...

    jquery获取file表单选择文件的路径、名字、大小、类型

    当然,出于安全原因,这个路径可能是一个伪造的路径(例如`C:\fakepath\filename`),并不指向实际文件位置。 2. 获取文件名 通过监听`change`事件,我们可以通过事件对象`e`来访问`e.currentTarget.files[0].name`...

    jquery实现图片上传前本地预览

    前段时间遇到一个问题,前端想实现图片上传预览(不经过后端PHP或JAVA处理),用户点击file按钮上传文件,点击确定马上就能看到预览的效果,但在实现的时候无论怎样都取不到file上图片的真实路径,得到的反而是C:\...

    js预览图片兼容所有浏览器

    在JavaScript编程中,预览图片是一项常见的需求,尤其是在网页上传图片功能中。为了实现这个功能并且确保兼容性,我们需要处理各种浏览器之间的差异,包括那些较老的版本,如Internet Explorer 6、7和8,以及Firefox...

    js+ajax实现获取文件大小的方法

    在Web开发中,有时我们需要在用户上传文件之前检查文件的大小,以确保它们符合服务器的存储限制或防止过大的文件导致性能问题。本篇文章将详细解释如何使用JavaScript(JS)和Ajax技术来实现这一功能。 首先,我们...

Global site tag (gtag.js) - Google Analytics