ZK中使用JS读取客户端txt文件内容问题


Posted in Javascript onNovember 07, 2019

最近写一个需求时遇到一个问题,用户需要通过点击一个按钮直接读取他自己电脑上D盘的一个txt文件内容显示到页面,因为项目现在是用ZK写的.我对于ZK也是刚刚了解不就,很多都还不是很熟.起初我是想用io流去读取,然后写完发现,这样每次读取的都是服务器上的D盘下的txt文件,所以在网上找了很久.很多都是获取服务器上的文件夹或者是上传到服务器再读取.直接通过文件地址读取文件内容很少.因为这样很不安全.目前我也只找到了一种,但是只限于IE浏览器.

<?page title="new page title" contentType="text/html;charset=UTF-8"?>
<zk>
<window title="ZK中使用JS读取客户端txt文件内容问题" border="normal">
  <button label="点击获取txt内容" id="butt"/>
  <label id="filePath" value="D:\\test.txt" style="display:none"/>
  <separator/> 
  <label id="info" style="color:red"/>
  <script><![CDATA[ 
   zk.afterMount(function(){
    jq("$butt").click(function(){      
      try{   
        var fs =new ActiveXObject("Scripting.FileSystemObject");   
     }catch(e){ 
        alert("浏览器不兼容,安全级别太高,无法读取,请使用IE浏览器打开!");         
     }   
        var ts,s;  
       var str = ""; 
       var ForReading = 1; 
        //文件路径,这里是写死在label
        var path = jq("$filePath").text();//这里用 .val()获取不到值,毕竟不是jsp
      //读取文件的内容。    
      ts = fs.OpenTextFile(path,ForReading,true);   
      while(!ts.AtEndOfStream){  
        s = ts.ReadLine(); 
        str+=s; 
      }  
      ts.Close(); 
      jq("$info").text(str);  
     });
   });
  ]]></script>
</window>
</zk>

ZK中使用JS读取客户端txt文件内容问题

ZK中使用JS读取客户端txt文件内容问题

因为ActiveX是IE流量器的插件,所以这个只能在IE浏览器可用.如果你发现IE浏览器也没出来,那你可能是ActiveX插件相关功能没开,需要在IE浏览器进行如下设置

ZK中使用JS读取客户端txt文件内容问题

然后就出来了,但是这样网也就会提示 存在安全风险,没办法,这种操作本来就是不安全的行为.其他浏览器,目前我只知道必须用户通过手动选择文件后在读取文件内容,没发现能通过文件路径直接去读取客户端电脑上的文件.如果哪位大神知道,可以分享给我哦.

总结

以上所述是小编给大家介绍的ZK中使用JS读取客户端txt文件内容问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jquery animate 动画效果使用说明
Nov 04 Javascript
用Js实现的动态增加表格示例自己写的
Oct 21 Javascript
JavaScript的常见兼容问题及相关解决方法(chrome/IE/firefox)
Dec 31 Javascript
EXT中单击button按钮grid添加一行(光标位置可设置)的实例代码
Jun 02 Javascript
AngularJs bootstrap搭载前台框架——js控制部分
Sep 01 Javascript
关于JS中二维数组的声明方法
Sep 24 Javascript
微信小程序实战之自定义抽屉菜单(7)
Apr 18 Javascript
浅谈Vue数据绑定的原理
Jan 08 Javascript
从零开始搭建vue移动端项目到上线的步骤
Oct 15 Javascript
Vue 中使用 typescript的方法详解
Feb 17 Javascript
JavaScript进阶(二)词法作用域与作用域链实例分析
May 09 Javascript
详解小程序横屏方案对比
Jun 28 Javascript
vue 实现强制类型转换 数字类型转为字符串
Nov 07 #Javascript
vue中 数字相加为字串转化为数值的例子
Nov 07 #Javascript
JS实现随机抽选获奖者
Nov 07 #Javascript
Vue中错误图片的处理的实现代码
Nov 07 #Javascript
vue 实现购物车总价计算
Nov 06 #Javascript
JavaScript原型式继承实现方法
Nov 06 #Javascript
vue点击自增和求和的实例代码
Nov 06 #Javascript
You might like
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
详解php用curl调用接口方法,get和post两种方式
2017/01/13 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
PHPMailer使用QQ邮箱实现邮件发送功能
2017/08/18 PHP
jQueryUI如何自定义组件实现代码
2010/11/14 Javascript
js实现上传图片之上传前预览图片
2013/03/25 Javascript
防止浏览器记住用户名及密码的简单实用方法
2013/04/22 Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
2013/07/04 Javascript
简介JavaScript中的push()方法的使用
2015/06/09 Javascript
js操作数组函数实例小结
2015/12/10 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
jQuery分页插件jquery.pagination.js使用方法解析
2017/02/09 Javascript
js前端日历控件(悬浮、拖拽、自由变形)
2017/03/02 Javascript
认识less和webstrom的less配置方法
2017/08/02 Javascript
layui点击按钮添加可编辑的一行方法
2018/08/15 Javascript
JS封装的模仿qq右下角消息弹窗功能示例
2018/08/22 Javascript
node.js环境搭建图文详解
2018/09/19 Javascript
如何编写一个 Webpack Loader的实现
2020/10/18 Javascript
Antd的Table组件嵌套Table以及选择框联动操作
2020/10/24 Javascript
[34:39]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#1COL VS EG第二局
2016/03/05 DOTA
Python 字符串操作方法大全
2014/03/11 Python
Python中用psycopg2模块操作PostgreSQL方法
2017/11/28 Python
python实现发送邮件功能代码
2017/12/14 Python
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
对python中的装包与解包实例详解
2019/08/24 Python
Django实现基于类的分页功能
2019/10/31 Python
详解在python操作数据库中游标的使用方法
2019/11/12 Python
安装python3.7编译器后如何正确安装opnecv的方法详解
2020/06/16 Python
html5自定义video标签的海报与播放按钮功能
2019/12/04 HTML / CSS
linux面试题参考答案(9)
2015/01/07 面试题
教学评估实施方案
2014/03/16 职场文书
个人先进事迹材料
2014/12/29 职场文书
2015年党日活动总结范文
2015/03/25 职场文书
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL
Python内置数据结构列表与元组示例详解
2021/08/04 Python
【海涛dota】偶遇拉娜娅 质量局德鲁伊第一视角解说
2022/04/01 DOTA