获取单元格中选中部分内容
在单元格中,我们可以通过getValue获取单元格的实际值,可以通过getText获取显示值。但是这些获取的都是一个完整的单元格值,那么有的用户想要获取双击后选中的值,应该如何实现呢?这个需求的背景是有的用户想要通过选中单元格的部分文本,然后点击按钮后实现上标或者下标的类似功能。那想要实现上下标的功能,一个简单的方法就是通过富文本来实现。可以参考下面的学习指南的链接。
https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/cells/basic-rich-text#
那么我们主要讲一下如何获取选中部分的内容,想要用自定义单元格实现上下标,可以自行扩展。这个思路主要就是利用了,Windows下的getSeletion方法,然后,点击按钮时,会自动结束编辑状态,在我们的EditEnding事件中去获取选择的区域。代码如下,非常简单,做了一个浏览器的兼容的判断。
var userSelection, userSelectionx;
sheet.bind(GC.Spread.Sheets.Events.EditEnding, function (sender, args) {
if (window.getSelection) {//一般浏览器
userSelection = window.getSelection();
console.log(userSelection)
} else if (document.selection) {//IE浏览器、Opera
userSelection = document.selection.createRange();
}
userSelectionx = userSelection.toString();
});
下载附件即可查看完整的demo。
页:
[1]