我正在创建一个插件,它使用 office.js 以表格形式显示数据库中的数据。并且在该表列中可以包含 html 形式的数据。所以我的要求是当我创建表时,如果任何列具有应该显示为带有格式的普通文本的 html 内容,则在该表中。
我找到了一些创建表格的代码
function writeTable() {
// Build table.
var myTable = new Office.TableData();
myTable.headers = [["Cities"]];
myTable.rows = [['<b>Hello there</b>'], ['Roma'], ['Tokyo'], ['Seattle']];
// Write table.
Office.context.document.setSelectedDataAsync(myTable, { coercionType: Office.CoercionType.Table },
function (result) {
var error = result.error
if (result.status === Office.AsyncResultStatus.Failed) {
write(error.name + ": " + error.message);
}
});
}
在上面的代码中
myTable.rows = [['<b>Hello there</b>'], ['Roma'], ['Tokyo'], ['Seattle']];
在上面的代码中,第一个值是 html 内容,因此在创建表时不应显示 html,并且输出应该像Hello there in bold 一样。
我还找到了实际根据需要以正常形式显示 html 的代码,但我无法将它与上述代码一起使用。我为 html 渲染找到的代码如下。
function writeHtmlData() {
Office.context.document.setSelectedDataAsync("<b>Hello</b> World!", { coercionType: Office.CoercionType.Html }, function (asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
// write('Error: ' + asyncResult.error.message);
}
});
}
谢谢!