通过Office加载项将内容添加到Outlook电子邮件正文

通过Office加载项将内容添加到Outlook电子邮件正文,outlook,ms-office,Outlook,Ms Office,我已经创建了一个Office加载项,希望在电子邮件正文中添加一些html内容。这是可行的,但是内容有些变化,所以我的css不起作用。出于某种原因,将“x_904;”作为前缀添加到属性中(见图) 我正在使用Office.mailbox.item.body.setSelectedDataAsync方法添加html 你可以在GitHub上找到代码:我不知道为什么它要添加x_uuuuu前缀,但主要的问题是你设置的是css样式,而不是类,应该是style属性,而不是class属性 Office.cont

我已经创建了一个Office加载项,希望在电子邮件正文中添加一些html内容。这是可行的,但是内容有些变化,所以我的css不起作用。出于某种原因,将“x_904;”作为前缀添加到属性中(见图)

我正在使用Office.mailbox.item.body.setSelectedDataAsync方法添加html


你可以在GitHub上找到代码:

我不知道为什么它要添加x_uuuuu前缀,但主要的问题是你设置的是css样式,而不是类,应该是
style
属性,而不是
class
属性

Office.context.mailbox.item.body.setSelectedDataAsync("<div style=\"border-left-width: 2px;border-left-color: #0067A3;border-left-style: solid;padding-left: 10px;\"><h2>" + card.name + "</h2><div>" + card.desc + "</div></div>", { coercionType: Office.CoercionType.Html });
Office.context.mailbox.item.body.setSelectedDataAsync(“+card.name+”+card.desc+”,{concuriotype:Office.concuriotype.Html});

以下是Microsoft在其加载项文档()中给出的答案


“使用HTML格式的正文时,必须注意Body.getAsync和Body.setAsync方法不是幂等的。从getAsync方法返回的值不一定与之前在setAsync方法中传递的值完全相同。客户端可能会修改传递给setAsync的值,以便使用其渲染引擎高效地进行渲染。“

OMG!这是一个多么愚蠢的错误。这是我的错误。感谢您指出这一点!答案解决了一个问题,但没有回答Outlook为什么要插入“x”_“在我的属性上。如果我在邮件正文中插入HTML。。。Office.context.mailbox.item.body.setSelectedDataAsync,以及稍后使用Office.context.mailbox.item.body.getAsync获取电子邮件正文时-我的div上的属性现在具有“x_3;”(即…)。有关此的另一讨论可在中找到。