TX TextControl HTML5 浏览器: 使用纯 JaveScript 方法加载本地文档

Web.TextControl 提供了加载和保存文档到服务器的后台API。另外,本地文档也可以同前台代码加载到TX提供的 HTML5 Viewer中进行展示。在客户端,Javascript API 如下:

发布于 2015/12/01 00:00

Web.TextControl 提供了加载和保存文档到服务器的后台API。另外,本地文档也可以同前台代码加载到TX提供的 HTML5 Viewer中进行展示。

在客户端,Javascript API 如下:

TXTextControl.loadDocument(streamType, base64Data);

 

这个例子展示了怎样使用 javascript 脚本加载本地文档:

点击 Input 按钮,选择预加载的文件, 文档本转换成 FileReader 类,readAsDataURL 方法转换文档为Base64 编码。

// *****************************************************************
// readDocument
//
// Desc: This function reads a file, converts it to a Base64 encoded
// string and loads it into TX Text Control
//
// param input: The input HTML element
// *****************************************************************
function readDocument(input) {
 if (input.files && input.files[0]) {
  var fileReader = new FileReader();
  fileReader.onload = function (e) {
   var streamType = TXTextControl.streamType.PlainText;
   // set the StreamType based on the lower case extension
   switch (fileinput.value.split('.').pop().toLowerCase()) {
    case 'doc':
     streamType = TXTextControl.streamType.MSWord;
     break;
    case 'docx':
     streamType = TXTextControl.streamType.WordprocessingML;
     break;
    case 'rtf':
     streamType = TXTextControl.streamType.RichTextFormat;
     break;
    case 'htm':
     streamType = TXTextControl.streamType.HTMLFormat;
     break;
    case 'tx':
     streamType = TXTextControl.streamType.InternalUnicodeFormat;
     break;
    case 'pdf':
     streamType = TXTextControl.streamType.AdobePDF;
     break;
   }
   // load the document beginning at the Base64 data (split at comma)
   TXTextControl.loadDocument(streamType, e.target.result.split(',')[1]);
  };
  // read the file and convert it to Base64
  fileReader.readAsDataURL(input.files[0]);
 }
}
// call readDocument when a new document has been selected
$("#fileinput").change(function () {
 readDocument(this);
});

 

下载代码体验该功能:

 

更多TX功能请参考:

/developer/textcontrol-asp

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态