一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

js中获取file控件的完整路径实例

时间:2013-05-16 编辑:简简单单 来源:一聚教程网

document.getElementById(""my-file"").files办法用于获取到用户所选择的文件的凑集,一般景象下都是选择单一文件(貌似FireFox如许做是支撑多文件选择的,不过没有试过,读者可以本身去测验测验),item数组可以获得此中的某一个文件,然后我们就可以应用 nsIDOMFile所供给的属性和办法了。它包含2个属性和3个办法:

fileName:用于获取到用户所选文件的名称,这和直接取value值所获得的成果一样。

fileSize:获得用户所选文件的大小。

getAsBinary():获得用户所选文件的二进制数据。

getAsDataURL():获得用户所选文件的路径,该路径被加密了,今朝只能在FireFox中应用。

getAsText():获得用户所选文件的指定字符编码的文本。

  有一点须要申明,办法getAsDataURL()可以取得用户所选文件的本地路径,然则这个路径的字符串文本被FireFox加密了,并且这段密文只能被FireFox辨认,其它的浏览器不克不及辨认,也就是说我将被加密后的路径直接赋值给一个img标签的src属性,在FireFox中是可以直接显示出的,而在IE中却不可。

 代码如下 复制代码


   
        get file input full pathtitle><br />     <script language=""<a href="/js_a/js.html" target="_blank">javascript</a>""><br />         function getFullPath(obj)<br />         {<br />             if(obj)<br />             {<br />                 if (window.navigator.userAgent.indexOf("MSIE")>=1)    //ie<br />                 {<br />                     obj.();<br />                     return document.ion.createRange().text;<br />                 }<br />                 else if(window.navigator.userAgent.indexOf("Firefox")>=1)             //<a href="/tags.php/firefox/" target="_blank">firefox</a><br />                 {<br />                     if(obj.files)<br />                     {<br />                         return obj.files.item(0).getAsDataURL();<br />                     }<br />                     return obj.value;<br />                 }<br />                 return obj.value;<br />             }<br />         }<br />     </script> <br />     <head><br />     <body><br />         <input type="file" onchange="document.getElementById(""img"").src=getFullPath(this);" /><br />     <img id="img" /><br />     </body><br /> </html></p> </td> </tr> </table> <p>上面实例在ie8中无法获取哦,下面我再给大家介绍一款可以兼容ie6,ie7,ie8中的解决办法,大家可参考。</p> <p>例子二</p> <table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onClick="doCopy('copy9753')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy9753> <p><script type="text/javascript"> <br /> //FX获取文件路径方法 <br /> function readFileFirefox(fileBrowser) { <br /> try { <br /> netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); <br /> } <br /> <a href="/tags.php/catch/" target="_blank">catch</a> (e) { <br /> alert('无法访问本地文件,由于浏览器安全设置。为了克服这一点,请按照下列步骤操作:(1)在地址栏输入"about:config";(2) 右键点击并选择 New->Boolean; (3) 输入"signed.applets.codebase_principal_support" (不含引号)作为一个新的首选项的名称;(4) 点击OK并试着重新加载文件'); <br /> return; <br /> } <br /> var fileName=fileBrowser.value; //这一步就能得到客户端完整路径。下面的是否判断的太复杂,还有下面得到ie的也很复杂。 <br /> var file = Components.classes["@mozilla.org/file/local;1"] <br /> .createInstance(Components.interfaces.nsILocalFile); <br /> try { <br /> // Back slashes for windows <br /> file.initWithPath( fileName.replace(///g, "<a>\\</a>") ); <br /> } <br /> catch(e) { <br /> if (e.result!=Components.results.NS_ERROR_FILE_UNRECOGNIZED_PATH) throw e; <br /> alert("File '" + fileName + "' cannot be loaded: relative paths are not allowed. Please provide an absolute path to this file."); <br /> return; <br /> } <br /> if ( file.exists() == false ) { <br /> alert("File '" + fileName + "' not found."); <br /> return; <br /> } <br /> return file.path; <br /> } <br /> //根据不同浏览器获取路径 <br /> function getvl(){ <br /> //判断浏览器 <br /> var Sys = {}; <br /> var ua = navigator.userAgent.toLowerCase(); <br /> var s; <br /> (s = ua.match(/msie ([d.]+)/)) ? Sys.ie = s[1] : <br /> (s = ua.match(/firefox/([d.]+)/)) ? Sys.firefox = s[1] : <br /> (s = ua.match(/chrome/([d.]+)/)) ? Sys.chrome = s[1] : <br /> (s = ua.match(/opera.([d.]+)/)) ? Sys.opera = s[1] : <br /> (s = ua.match(/version/([d.]+).*safari/)) ? Sys.safari = s[1] : 0; <br /> var file_url=""; <br /> if(Sys.ie<="6.0"){ <br /> //ie5.5,ie6.0 <br /> file_url = document.getElementById("file").value; <br /> }else if(Sys.ie>="7.0"){ <br /> //ie7,ie8 <br /> var file = document.getElementById("file"); <br /> file.<a href="/tags.php/select/" target="_blank">select</a>(); <br /> file_url = document.selection.createRange().text; <br /> }else if(Sys.firefox){ <br /> //fx <br /> //file_url = document.getElementById("file").files[0].getAsDataURL();//获取的路径为FF识别的加密字符串 <br /> file_url = readFileFirefox(document.getElementById("file")); <br /> } <br /> //alert(file_url); <br /> document.getElementById("text").innerHTML="获取文件域完整路径为:"+file_url; <br /> } <br /> </script> <br /> <h1>JS获取文件域完整路径的方法,兼容不同浏览器</h1> <br /> <div id="text" style="color:#f00;"></div> <br /> <input type="file" id="file" /> <br /> <input name="" type="button" value="获取" onClick="getvl();"></p> </td> </tr> </table></td> </tr> </table> </div> <div class="pages art-detail"> </div> <ul class="TurnPage"> <li class="TurnPage-left"> <p> <span>上一个:</span> <a href="https://www.111com.net/wy/Dedecms/47089.htm" class="maxWidth">Dedecms网站管理后台白屏解决办法</a> </p> </li> <li class="TurnPage-right"> <p> <span>下一个:</span> <a href="https://www.111com.net/wy/Frontpage/47113.htm" class="maxWidth">js获取ckeditor内容与判断是否为空代码介绍</a> </p> </li> </ul> <div class="articles"> <div class="tit02"> <h4>相关文章</h4> </div> <ul> <li> <a target="_blank" href="https://www.111com.net/wy/js-ajax/52944.htm">js获取光标在输入框的位置实例</a> <span>10-16</span> </li> <li> <a target="_blank" href="https://www.111com.net/wy/js-ajax/38581.htm">js TextArea获取光标详解说明与实例</a> <span>05-19</span> </li> <li> <a target="_blank" href="https://www.111com.net/wy/js-ajax/js-iframe-src.htm">js 获取iframe的src实例</a> <span>10-12</span> </li> <li> <a target="_blank" href="https://www.111com.net/wy/228472.htm">HTML简单购物数量小程序代码展示</a> <span>10-31</span> </li> <li> <a target="_blank" href="https://www.111com.net/wy/228464.htm">html canvas实现弹幕功能</a> <span>10-31</span> </li> <li> <a target="_blank" href="https://www.111com.net/wy/228463.htm">HTML中空格表示的意义</a> <span>10-31</span> </li> </ul> </div> </div> </div> </div> </div> <div class="hot-column"> <div class="cont"> <div class="tit"> <h4>热门栏目</h4> </div> <ul class="clearfix"> <li> <h6><a href="https://www.111com.net/phper/php.html" target="_blank">php教程</a></h6> <a href="https://www.111com.net/list-45/" target="_blank">php入门</a> <a href="https://www.111com.net/list-46/" target="_blank">php安全</a> <a href="https://www.111com.net/list-47/" target="_blank">php安装</a> <a href="https://www.111com.net/list-48/" target="_blank">php常用代码</a> <a href="https://www.111com.net/list-49/" target="_blank">php高级应用</a> </li> <li> <h6><a href="https://www.111com.net/net/net.html" target="_blank">asp.net教程</a></h6> <a href="https://www.111com.net/list-78/" target="_blank">基础入门</a> <a href="https://www.111com.net/list-79/" target="_blank">.Net开发</a> <a href="https://www.111com.net/list-80/" target="_blank">C语言</a> <a href="https://www.111com.net/list-81/" target="_blank">VB.Net语言</a> <a href="https://www.111com.net/list-82/" target="_blank">WebService</a> </li> <li> <h6><a href="https://www.111com.net/sj/index.html" target="_blank">手机开发</a></h6> <a href="https://www.111com.net/list-208/" target="_blank">安卓教程</a> <a href="https://www.111com.net/list-209/" target="_blank">ios7教程</a> <a href="https://www.111com.net/list-210/" target="_blank">Windows Phone</a> <a href="https://www.111com.net/list-211/" target="_blank">Windows Mobile</a> <a href="https://www.111com.net/list-212/" target="_blank">手机常见问题</a> </li> <li> <h6><a href="https://www.111com.net/cssdiv/css.html" target="_blank">css教程</a></h6> <a href="https://www.111com.net/list-99/" target="_blank">CSS入门</a> <a href="https://www.111com.net/list-100/" target="_blank">常用代码</a> <a href="https://www.111com.net/list-101/" target="_blank">经典案例</a> <a href="https://www.111com.net/list-102/" target="_blank">样式布局</a> <a href="https://www.111com.net/list-103/" target="_blank">高级应用</a> </li> <li> <h6><a href="https://www.111com.net/wy/yw.html" target="_blank">网页制作</a></h6> <a href="https://www.111com.net/list-136/" target="_blank">设计基础</a> <a href="https://www.111com.net/list-137/" target="_blank">Dreamweaver</a> <a href="https://www.111com.net/list-138/" target="_blank">Frontpage</a> <a href="https://www.111com.net/list-139/" target="_blank">js教程</a> <a href="https://www.111com.net/list-140/" target="_blank">XNL/XSLT</a> </li> <li> <h6><a href="https://www.111com.net/office/index.html" target="_blank">办公数码</a></h6> <a href="https://www.111com.net/list-236/" target="_blank">word</a> <a href="https://www.111com.net/list-237/" target="_blank">excel</a> <a href="https://www.111com.net/list-238/" target="_blank">powerpoint</a> <a href="https://www.111com.net/list-239/" target="_blank">金山WPS</a> <a href="https://www.111com.net/list-240/" target="_blank">电脑新手</a> </li> <li> <h6><a href="https://www.111com.net/jsp/jsp.html" target="_blank">jsp教程</a></h6> <a href="https://www.111com.net/list-68/" target="_blank">Application与Applet</a> <a href="https://www.111com.net/list-69/" target="_blank">J2EE/EJB/服务器</a> <a href="https://www.111com.net/list-70/" target="_blank">J2ME开发</a> <a href="https://www.111com.net/list-71/" target="_blank">Java基础</a> <a href="https://www.111com.net/list-72/" target="_blank">Java技巧及代码</a> </li> </ul> </div> </div> <div class="footer"> <div class="cont"> <p> <a href="https://www.111com.net/" target="_self">一聚教程网</a>| <a href="https://www.111com.net/us/us.html" class="about" target="_self">关于我们</a>| <a href="https://www.111com.net/us/me.html" class="contact" target="_self">联系我们</a>| <a href="https://www.111com.net/us/ads.html" class="gg_contact" target="_self">广告合作</a>| <a href="https://www.111com.net/us/link.html" class="friend_link" target="_self">友情链接</a>| <a href="https://www.111com.net/us/bcinfo.html" class="copyright_notice" target="_self">版权声明</a> </p> <p> <span>copyRight@2007-2024 www.111COM.NET AII Right Reserved <a href="https://beian.miit.gov.cn/" target="_blank" class="beian">苏ICP备17065847号-2</a> </span> </p> <p> <span> 网站内容来自网络整理或网友投稿如有侵权行为请邮件:yijucomnet@163.com 我们24小时内处理 </span> </p> </div> </div> <script src="https://assets.111com.net/js/stat.js?v=2024022101"></script> <script src="https://api.111com.net/api/stat/hits?type=article&id=47112"></script> </body> </html>