【问题标题】:Inserting various paragraphs into one content control Office-js将各种段落插入一个内容控件 Office-js
【发布时间】:2016-08-30 03:11:31
【问题描述】:

我正在开发一个 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);
    })
});

}

【问题讨论】:

    标签: office-js


    【解决方案1】:

    您是否尝试过插入内容控件,然后插入 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。

    希望这对您有所帮助并祝您编码愉快!! 胡安。

    【讨论】:

    • 这样做的好方法,我想加载段落,但这肯定会奏效。我提出了我有的功能,但我会采取你的方式看起来更干净。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-06
    • 1970-01-01
    相关资源
    最近更新 更多