OneNote添加:TableCell内容

时间:2016-11-26 19:51:46

标签: office-js onenote onenote-api

OneNote加载项的文档向我们展示了如何获取表格单元格。在下面的代码片段中(文档&#39的示例中的小修改),我在位置[0,0]加载一个表格单元格。但是,一旦我收到TableCell,就不清楚如何加载内容。我怎么知道TableCell的内部包含什么?有什么办法吗

var cell = table.getCell(0,0);
cell.getContents();//Is this correct?

或者这不是考虑获取模式的正确方法,因为内部内容未知?

谢谢!



OneNote.run(function(ctx) {
	var app = ctx.application;
	var outline = app.getActiveOutline();

	// Queue a command to load outline.paragraphs and their types.
	ctx.load(outline, "paragraphs, paragraphs/type");

	// Run the queued commands, and return a promise to indicate task completion.
	return ctx.sync().then(function () {
		var paragraphs = outline.paragraphs;

		// for each table, append a column.
		for (var i = 0; i < paragraphs.items.length; i++) {
			var paragraph = paragraphs.items[i];
			if (paragraph.type == "Table") {
				var table = paragraph.table;
				var cell = table.getCell(0,0);
				//To do - how to get value inside?
			}
		}
		return ctx.sync();
	})
})
.catch(function(error) {
	console.log("Error: " + error);
	if (error instanceof OfficeExtension.Error) {
		console.log("Debug info: " + JSON.stringify(error.debugInfo));
	}
});
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

请参阅表格单元格的官方文档: https://github.com/OfficeDev/office-js-docs/blob/master/reference/onenote/tablecell.md

表格单元格只包含段落。这些段落可以是富文本,图像,大纲,甚至是另一个带有tablerows和tablecells的表。

要了解表格单元格中的内容,您必须使用其类型加载子段落,然后根据其类型加载子段落属性(与您在代码中执行的方式相同)。