对于文档来讲 一个书签只能在文档中出现一次,不能重复添加
对于pageoffice来说,事例中书签只能添加一次
为了实现数据标签也像pageoffice数据区域一样可以多次添加,需要在原书签的基础上在书签后面添加_1、_2 类似的区分;代码如下
function add(name, content) {
var sealId = content;
const list = []
//addBkmkArr见原示例,为文档的全部书签名称数组
for (let i = 0; i < addBkmkArr.length; i++) {
if (addBkmkArr[i].indexOf(name) !== -1) {
const arr = addBkmkArr[i].split("_")
list.push(arr[arr.length-1])
}
}
const num = list.length > 0 ? Math.max.apply(null,list) + 1 : 1
const max = num < 10 ? '0' + num : num
name = name + "_" + max;
if ("true" == window.external.CallParentFunc("setSealLabel",sealId+"="+name)) {
addBkmkArr.splice(0, 0, name); //向数组第一个位置(0坐标处)添加一个元素
addBkmkContArr.splice(0, 0, content);
searchBookMark('');
searchBookMark2('');
}
}