用PageOffice经过Js编程实如今Word中插入书签

   在使用Word时,若是内容过多有时为了快速定位到内容的某一处或某一部分怎会在该处添加书签。Word中的书签能够经过工具栏手动添加或删除,其实也能够本身变成实现在当前光标处插入书签,或根据书签名称删除某个书签。
服务器

经过后台程序在当前光标处添加书签的具体步骤以下:ide

第一步:请先安装PageOffice的服务器端的安装程序,以后在你的网站中根目录下添加pageoffice文件夹(在PageOffice官方网站的“下载中心”中可下载相应的压缩包,解压以后直接将pageoffice文件夹拷贝到根目录下就能够了)。函数

第二步:在网站中建立页面WordAddBKMK.aspx工具

先在工具箱中拖动一个PageOfficeCtrl控件到页面上(PageOfficeCtrl控件位于工具箱最下方),并设置控件所在层(<div></div>)的高和宽。测试

再在该页面中添加两个文本框,用于输入书签名称和书签文本内容,部分以下:网站

插入书签时,请先输入要插入的书签名称和文本;删除书签时,请先输入相应的书签名称!<asp:LabelID="Label1"runat="server"Text="书签名称:"></asp:Label>spa

<inputid="txtBkName"type="text"value="test"/>orm

<asp:LabelID="Label2"runat="server"Text="书签文本:"></asp:Label>server

<inputid="txtBkText"type="text"value="[测试]"/>get

第三步:WordAddBKMK.aspx.cs后台编写代码。打开Word文件,部分代码以下:

//设置服务器页面

PageOfficeCtrl1.ServerPage = "pageoffice/server.aspx";

   PageOfficeCtrl1.AddCustomToolButton("插入书签", "addBookMark()",7);

PageOfficeCtrl1.AddCustomToolButton("删除书签", "delBookMark()",7);

//打开文件

PageOfficeCtrl1.WebOpen("doc/template.doc",PageOffice.OpenModeType.docNormalEdit, "张佚名");

而后在WordAddBKMK.aspx添加JS函数,代码以下:

var range;

function addBookMark()

   {

var obj = document.getElementById("PageOfficeCtrl1").Document;

var bkName = document.getElementById("txtBkName").value;

var bkText = document.getElementById("txtBkText").value;

       range =obj.Application.Selection.Range;

       range.Text = bkText;

       obj.Bookmarks.Add(bkName,  range);

       obj.Bookmarks(bkName).Select();

}


function delBookMark()

   {

var bkName = document.getElementById("txtBkName").value;

var obj = document.getElementById("PageOfficeCtrl1").Document;

       range =obj.Application.Selection.Range;

if(obj.Bookmarks.Exists(bkName)){

           obj.Bookmarks(bkName).Select();

          obj.Application.Selection.Range.Text = "";

       }

}

如上所述,便可用本身的程序实现添加删除Word中的书签了。

相关文章
相关标签/搜索