JS 获得FileUpload1 的完整路径

JS 获得FileUpload1 的完整路径

由于安全方面因素,高版本浏览器不能获取上传图片,文件的完整路径,

           这里在JS中进行获取:

<input name="file2" type="file" class="text1" id="FileUpload1" οnchange="getFullPath()" runat="server" />

下面是JS函数:本人把它写入隐藏域了,

<%--获得文件上传的完整路径--%>
   <script language="javascript" type="text/javascript">
       function getFullPath() {
           debugger
           if ((window.navigator.userAgent.indexOf('MSIE') >= 0) && (navigator.userAgent.indexOf('Opera') < 0)) {
               var isIE = (document.all) ? true : false;
               var isIE6 = isIE && (navigator.userAgent.indexOf('MSIE 6.0') != -1);
               var isIE7 = isIE && (navigator.userAgent.indexOf('MSIE 7.0') != -1);
               var isIE8 = isIE && (navigator.userAgent.indexOf('MSIE 8.0') != -1);
              
               var file = document.getElementById("FileUpload1");
               if (isIE7 || isIE8) {
                   file.select();
                   var fullpath = document.selection.createRange().text;
                   document.getElementById("hid_hidpicpath").value = fullpath;     //隐藏域
                   document.selection.empty();
               }
               else {//机器上没安装ie6,还未测试ie6能直接获得完整路径不? GAGAHJT 2010
                   var file = document.getElementById("FileUpload1");
                   document.getElementById("hid_hidpicpath").value = file.value;    //隐藏域
               }
           }
           else if (navigator.userAgent.indexOf('Firefox') >= 0) {
               try {
                   netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
               }
               catch (e) {
                   document.getElementById("FileUpload1").value = "";
                   var tip = "如果您用的是火狐浏览器请设置如下:/n/n在地址栏输入: about:config /n然后找到" +
                   "signed.applets.codebase_principal_support"+
                   "双击进行修他后面的键值,将值修改为true关闭即可,否则您不能上传店面招牌!";
                   alert(tip);
                   return;
               }
               var fname = document.getElementById("FileUpload1").value;
               var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
               try {
                   file.initWithPath(fname.replace(g, ""));
               }
               catch (e) {
                   if (e.result != Components.results.NS_ERROR_FILE_UNRECOGNIZED_PATH) throw e;
                   alert(' 无法加载文件 ');
                   return;
               }
               document.getElementById("hid_hidpicpath").value =fname;     //隐藏域
           }
           else if (navigator.userAgent.indexOf('Opera') >= 0) {
             //未测试。。。。。。。。
           }
       }
   </script>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值