将多个段落插入一个内容控件Office-js
Inserting various paragraphs into one content control Office-js
我正在做一个 Office-js 项目,目前我正在将 Html 插入到 word 文档中。 Html 可能包含各种段落和图像,也可能仅包含文本。目前我知道您可以将段落或图像插入到内容控件中,但是我想知道是否可以将整个选择插入到内容控件中。我知道我可以做这样的事情
var contentControl = paragraphs.items[0].insertContentControl();
但是我想知道是否可以将整个 html 插入到内容控件中而不将其分成段落。有点像将 Html 作为一个对象插入到一个内容控件中。
更新当前代码
function tagInsertedContent(contentObject) {
Word.run(function (context) {
var contentTitle = contentObject.Name;
var modDate = contentObject.LastModifiedTime;
var paragraphs = context.document.body.paragraphs;
context.load(paragraphs, 'text');
return context.sync().then(function () {
var paragraph;
var contententControls;
for (var x = 0; x < paragraphs.items.length; x++) {
paragraph = paragraphs.items[x]
if (paragraph.text) {
contententControls = paragraph.insertContentControl();
contententControls.title = contentTitle;
contententControls.tag = modDate;
contententControls.color ="#ff0000";
}
}
})
.then(context.sync())
.catch(function (error) {
error.ErrorLocation = "Items Not Tagged";
error.ErrorCode = error.debugInfo.errorLocation;
error.ErrorMessage = "Content was not tagged correctly";
error.Selection = contentObject.Name;
ErrorHandler(error);
})
});
}
您是否尝试插入内容控件,然后再插入 HTML?您还可以将 HTML 插入内容控件!
例如你可以这样做:
function insertHTMLinToContentControl() {
var myHtml = "<b> Whatever HTML you want to insert </b>";
Word.run(function (ctx) {
var myContentControl = ctx.document.getSelection().insertContentControl();
myContentControl.insertHtml(myHtml, "replace");
return ctx.sync();
});
}
上面的代码在当前选择中插入一个内容控件,然后插入一个(在这个例子中很简单:))html.
希望这对您有所帮助,祝您编码愉快!!
娟.
我正在做一个 Office-js 项目,目前我正在将 Html 插入到 word 文档中。 Html 可能包含各种段落和图像,也可能仅包含文本。目前我知道您可以将段落或图像插入到内容控件中,但是我想知道是否可以将整个选择插入到内容控件中。我知道我可以做这样的事情
var contentControl = paragraphs.items[0].insertContentControl();
但是我想知道是否可以将整个 html 插入到内容控件中而不将其分成段落。有点像将 Html 作为一个对象插入到一个内容控件中。
更新当前代码
function tagInsertedContent(contentObject) {
Word.run(function (context) {
var contentTitle = contentObject.Name;
var modDate = contentObject.LastModifiedTime;
var paragraphs = context.document.body.paragraphs;
context.load(paragraphs, 'text');
return context.sync().then(function () {
var paragraph;
var contententControls;
for (var x = 0; x < paragraphs.items.length; x++) {
paragraph = paragraphs.items[x]
if (paragraph.text) {
contententControls = paragraph.insertContentControl();
contententControls.title = contentTitle;
contententControls.tag = modDate;
contententControls.color ="#ff0000";
}
}
})
.then(context.sync())
.catch(function (error) {
error.ErrorLocation = "Items Not Tagged";
error.ErrorCode = error.debugInfo.errorLocation;
error.ErrorMessage = "Content was not tagged correctly";
error.Selection = contentObject.Name;
ErrorHandler(error);
})
});
}
您是否尝试插入内容控件,然后再插入 HTML?您还可以将 HTML 插入内容控件!
例如你可以这样做:
function insertHTMLinToContentControl() {
var myHtml = "<b> Whatever HTML you want to insert </b>";
Word.run(function (ctx) {
var myContentControl = ctx.document.getSelection().insertContentControl();
myContentControl.insertHtml(myHtml, "replace");
return ctx.sync();
});
}
上面的代码在当前选择中插入一个内容控件,然后插入一个(在这个例子中很简单:))html.
希望这对您有所帮助,祝您编码愉快!! 娟.