如何在webix应用程序中阅读和查看光盘文件

时间:2017-04-04 11:34:32

标签: javascript jquery html webix

我是webix开发的新手,并没有找到关于我当前挑战的大量文档/帮助。

在我的webix应用程序中,我想要一个按钮(名称为“查看报告”)点击,该按钮将链接到我本地光盘中的光盘文件,并在弹出窗口中显示其内容。

我包含了到目前为止我可以编写的代码片段:

mytoolbar =
  {             id:'tb',
                view: 'toolbar',
                height: rowHeight,
                type: 'clean',
                cols: [
{view:"button", id:"showfile",  type:"icon", icon:"external-link", label:"View Report", width:buttonWidth, tooltip: "click to view report", on: {onItemClick:function(){viewReportFile()}} },

]

viewReportFile函数如下所示(取自 http://docs.webix.com/desktop__window.html

function viewReportFile(){
     webix.ui( {
        view:"window",
        height:250,
        width:300,
        left:50, top:50,
        move:true,
        resize: true,
        head:"This window can be resized",
        body:{
            template:"Some text"
        }
    }).show();    

})      
}

单击该按钮应该读取驻留在我的目录中的文件(比如说C:\ Users \ myname \ Desktop \ report.txt“)并在模态窗口中显示该文件内容。它可以是任何要显示的弹出窗口带有关闭按钮的文件内容。有人可以帮我实现吗?我很抱歉因为我不熟悉它而无法在这里放大量代码。

我还包括一个工作代码,允许用户从他的目录中选择一个文件并在textarea中显示其内容。

<html>

<input type="file" onchange="onFileSelected(event)">
<br>
<textarea id="result" rows="10" cols="50"></textarea>
<script>
function onFileSelected(event) {
  var selectedFile = event.target.files[0];
  var reader = new FileReader();

  var result = document.getElementById("result");

  reader.onload = function(event) {
    result.innerHTML = event.target.result;
  };

  reader.readAsText(selectedFile);
}

</script>
</html>

感谢。

1 个答案:

答案 0 :(得分:1)

这是一个示例,但请记住,有很多方法可以执行此操作,此示例不应该最适合您的具体情况:

http://webix.com/snippet/36341f3c

function loadReport() {
  return "My report string";
}

function viewReportFile() {
  $$('myContent').define('template', loadReport());
  $$('myPopup').show();
}


webix.ui({
        id: 'myPopup',
        view:"window",
        height:250,
        width:300,
        left:50,
        top:50,
        move:true,
        resize: true,
        head:"This window can be resized",
        body:{
            id: 'myContent',
            template: "Some text"
        }
    });