-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy pathindex.js
More file actions
54 lines (49 loc) · 1.51 KB
/
index.js
File metadata and controls
54 lines (49 loc) · 1.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import { Spreadsheet } from '@syncfusion/ej2-spreadsheet';
// To create plus icon wrapper.
function createPlusIconWrapper() {
const wrapperDiv = document.createElement("div");
wrapperDiv.className = 'e-custom-wrapper';
const iconSpan = document.createElement("span");
iconSpan.className = 'e-icons e-plus e-custom-icon';
wrapperDiv.appendChild(iconSpan);
return wrapperDiv;
}
function handleCreated() {
if (!spreadsheet) return;
spreadsheet.updateCell({ template: 'plus-icon' }, 'A1');
spreadsheet.updateCell({ template: 'plus-icon' }, 'B1');
spreadsheet.updateCell({ template: 'plus-icon' }, 'C1');
spreadsheet.resize();
spreadsheet.addRibbonTabs([
{
header: { text: 'Template' },
content: [
{
text: 'Add Icon',
tooltipText: 'Initialize',
click: function () {
if (!spreadsheet) return;
var sheet = spreadsheet.getActiveSheet();
spreadsheet.updateCell(
{ template: 'plus-icon' },
sheet.activeCell
);
spreadsheet.resize();
},
},
],
},
]);
}
function handleBeforeCellRender(args) {
if (args.cell && args.cell.template === 'plus-icon') {
const wrapperDiv = createPlusIconWrapper();
args.element.insertBefore(wrapperDiv, args.element.firstChild);
}
}
let spreadsheet = new Spreadsheet({
created: handleCreated,
beforeCellRender: handleBeforeCellRender,
});
// Render the initialized Spreadsheet
spreadsheet.appendTo('#spreadsheet');