目录

1. NTKO在线office控件使用实例

1.1. 基础介绍

1.2. 基本原理

1.3. 实例

1.3.1. 打开、保存部分代码

1.3.2. 动态设值

1. NTKO在线office控件使用实例

1.1. 基础介绍

  在线Office基础功能有在线打开、修改、保存文档、动态插入数据等常用功能。具体的介绍请直接参考官方的文档。

1.2. 基本原理

  当控件向后台请求一个链接加载word文档的时候,对应的后台处理要有一个文件下载的方法,而相似地,当控件向后台保存一个word文档的时候,后台也要有一个文件上传处理的方法。

1.3. 实例

1.3.1. 打开、保存部分代码

      var path="<%=basePath%>";
var ntkoobj=null;//控件对象
var isFileOpened;//控件是否打开文档
var reloadFlg=0;//重新获取标志 /**ntko工具对象**/
var ntkoTool={
newDoc:function(docType){
//新建文档
ntkoobj = document.all("TANGER_OCX"); //"TANGER_OCX"是网页中的NTKO OFFICE文档控件的ID
ntkoTool.disableMenu();
if(null == ntkoobj){
alert("NTKO OFFICE not exist!");
return;
}
if(docType==null||0 == docType.length){
ntkoobj.CreateNew("Word.Document");//默认是word
}else{
if(docType=="word"){
ntkoobj.CreateNew("Word.Document");
}else if(docType=="excel"){
ntkoobj.CreateNew("Excel.Sheet");
}else if(docType=="ppt"){
ntkoobj.CreateNew("PowerPoint.Show");
}
}
},
openDoc:function(docURL){
//打开文档
ntkoobj = document.all("TANGER_OCX"); //"TANGER_OCX"是网页中的NTKO OFFICE文档控件的ID
ntkoTool.disableMenu();
if(null == ntkoobj){
alert("NTKO OFFICE not exist!");
return;
}
//打开服务器上的文档
ntkoobj.BeginOpenFromURL(docURL);
},
disableMenu:function(){
//禁用菜单
ntkoobj.FileSave=false;
ntkoobj.FileSaveAs=false;
ntkoobj.FileNew=false;
ntkoobj.FileOpen=false;
ntkoobj.FileClose=false;
},
saveDoc:function(docURL,noInfo){
//保存文档
var fileType="";
if(isFileOpened){
switch (ntkoobj.doctype){
case 1:
fileType = "Word.Document";
break;
case 2:
fileType = "Excel.Sheet";
break;
case 3:
fileType = "PowerPoint.Show";
break;
case 4:
fileType = "Visio.Drawing";
break;
case 5:
fileType = "MSProject.Project";
break;
case 6:
fileType = "WPS Doc";
break;
case 7:
fileType = "Kingsoft Sheet";
break;
default :
fileType = "unkownfiletype";
}
var filePath=$("#filePath").val();
var fileName=$("#fileName").val();
var para="?filePath="+filePath+"&fileName="+fileName;
var result = ntkoobj.saveToURL(docURL+para,"file","fileType="+fileType,fileName,"docFileForm",true);
if(noInfo==null){
if(result=='ok'){
alert("文件保存成功!");
}
}
}else{
//alert("没有打开的文档可以保存!");
}
},
closeDoc:function(){
if(isFileOpened){
if(confirm("关闭文档前,系统将先保存文档。是否关闭?")){
ntkoTool.saveDoc('<%=basePath%>/ntko/saveWord.shtml','noInfo');
ntkoobj.close();
isFileOpened=false;
}
}else{
//alert("没有文档可关闭!");
}
},
getTdValue:function(table,rowIndex,colIndex){
var start=table.Cell(rowIndex,colIndex).range.start;
var end=table.Cell(rowIndex,colIndex).range.end-1;
return ntkoobj.ActiveDocument.range(start,end).text;
},
getPageSize:function(){
//获取word的总页数,和当前页数
var curpage=TANGER_OCX.ActiveDocument.Application.Selection.Information(3);
var pagenum=TANGER_OCX.ActiveDocument.Application.Selection.Information(4);
var arr=new Array();
arr[0]=pagenum;
arr[1]=curpage;
return arr;
}
};

1.3.2. 动态设值

1、在表格末尾加一行设值:

document.all.item("TANGER_OCX").ActiveDocument.Tables(1).rows.add(); table.Cell(0,1).range.Text="123";

2、在表格指定行之前插入一行设值:

 var rg =document.all.item("TANGER_OCX").ActiveDocument.Tables(1).Cell(1,1).range;//获取第x行,y列的单元格
document.all.item("TANGER_OCX").ActiveDocument.Tables(1).rows.add(rg);//在rg单元格所在行的前一行插入行
table.Cell(2,1).range.Text="123";

3、书签方式设值:

ntkoobj.SetBookmarkValue("name","xmq");//模版文档要先加书签

NTKO在线office控件使用实例的更多相关文章

  1. 很不错的在线Office控件:IWebOffice与SOAOffice

    http://blog.csdn.net/cjh200102/article/details/17220441 iWebOffice2003文档控件 iWebOffice2003网络文档中间件能够在I ...

  2. WEB网站类型系统中使用的OFFICE控件

    WEB下使用的OFFICE控件介绍,另提供一个原创破解首先来个名词解释,Office网络文档控件,就是在网页中编辑office文档的控件(前提是browser已经安装OFFICE).最近一个项目需要用 ...

  3. WEB网站类型系统中使用的OFFICE控件-破解Ntko-Office

    2011-12-12 22:49| 发布者: Admin| 查看: 1399| 评论: 0|原作者: 风云OA   摘要: WEB下使用的OFFICE控件介绍,另提供一个原创破解 首先来个名词解释,O ...

  4. DevExpress XtraScheduler日程管理控件应用实例(2)-- 深入理解数据存储

    DevExpress年终击穿底价,单套授权低至67折!查看详情>>> 在上篇随笔<DevExpress XtraScheduler日程管理控件应用实例(1)-- 基本使用> ...

  5. MFC按钮、列表控件应用实例(一)

    需求:实现张三.李四.王五 3 人的课程选择,并将选课结果提交到列表框中显示. 实现过程: 1.建立对话框mfc工程. 2.添加控件 tab 顺序 控 件 类 型 控件 ID1 Button IDC_ ...

  6. delphi开发学习四:TClientDataSet与TDataSetProvider控件使用实例

    1.TClientDataSet控件 通过TClientDataSet控件可以建立瘦客户端的应用程序,且数据执行效率较高,但它不能和数据库自动连接,程序中必须制定它如何获取数据.一般情况下,TClie ...

  7. ntko office在线编辑控件问题记录

    ntko office在线预览插件 http://www.ntko.com/ 问题:火狐或谷歌下保存报[没有打开的文档]错误,ie正常 原因:火狐.谷歌.ie的各方法执行文字不同,ie嵌在页面,而火狐 ...

  8. (转).NET 4.5中使用Task.Run和Parallel.For()实现的C# Winform多线程任务及跨线程更新UI控件综合实例

    http://2sharings.com/2014/net-4-5-task-run-parallel-for-winform-cross-multiple-threads-update-ui-dem ...

  9. C#分屏控件用法实例

    本文实例中的自定义类PictureBox继承于UserControl,最终实现简单的分屏功能.分享给大家供大家参考之用.具体实现代码如下: public partial class PictureCo ...

随机推荐

  1. Android学习笔记(七) 布局基础

    一.概念 控件布局方法,就是指控制控件在Activity当中的位置.大小.颜色以及其他控件样式属性的方法.有两种方法可以控制布局: 在布局文件(xxx.xml)中完成控件的布局. 在JAVA代码中完成 ...

  2. web 自动化测试 selenium基础到应用(目录)

    第一章   自动化测试前提及整体介绍 1-1功能测试和自动化测试的区别 1-2自动化测试流程有哪些 1-3自动化测试用例和手工用例的区别 1-4 自动化测试用例编写 1-5 selenium的优势以及 ...

  3. 快速开发框架天梭(Tissot)

    天梭(Tissot)集成SpringBoot+Dubbo等主流互联网技术栈,高度集成.优化方便快速搭建应用.某互金科技公司内部孵化框架,已应用于公司90%业务系统. 框架划分模块有: tissot-c ...

  4. System.Lazy<T>延迟加载

    在很多情况下,有些对象需要在使用时加载或根据逻辑动态加载.有些情况如果不延迟加载,可能会影响效率甚至抛出Timeout Exception.如网络操作.数据库操作.文件IO操作 直接上代码,方便我们理 ...

  5. BotFramework学习-02

    1.请求的Message格式 { "type": "Message", "id": "fd89606f8014453ca5587e ...

  6. 【原创】如何编写c#用户登陆后用户名在前台显示

    这种肯定是判断session啦!!!!! @{ string username = (string)Session["username"]; user user = new use ...

  7. CSS 实现斑马条纹

    Part.1 linear-gradient() linear-gradient() 函数用于创建一个线性渐变的 "图像".为了创建一个线性渐变,你需要设置一个起始点和一个方向(指 ...

  8. java线程学习2

    sleep  变为阻塞态  但不释放锁  休眠指定毫秒时间 yield  变为就绪态  可能立即被执行  也可能不立即被执行 join   插队  暂停当前执行的线程  让调用join的线程先执行 线 ...

  9. <Redis> 入门六 主从复制方式的集群

    1.集群如何操作 现在有三台虚拟机,ip分别为100,105,106,将100作为master,其他两台作为slave 1.vim redis.conf 以前的版本是 slaveof <mast ...

  10. KBE_那些事

    批处理文件不要放在工具栏执行,这里有坑:工具栏运行批处理文件,当前路径(%cd%)不是批处理文件所在路径 日志的输出(DEBUG_MSG 和 INFO_MSG)都被输出在({资产库}/logs/*.l ...