您好,目前SpreadJS没有能一键实现显示或隐藏公式的接口,您可以通过遍历单元格的方式实现,我给您贴一个Demo,您可以参考一下:
js代码:
- $(document).ready(function () {
- var spread = new GC.Spread.Sheets.Workbook(document.getElementById('ss'), {
- sheetCount: 1
- });
- initSpread(spread);
- });
- function initSpread(spread) {
- var spreadNS = GC.Spread.Sheets;
- var sheet = spread.getSheet(0);
- sheet.name('Basic Fucntions');
- // 重要: 挂起表格的绘制操作.
- // 先对表格实例进行操作,等操作完毕再恢复绘制,否则会极大拖慢执行效率
- sheet.suspendPaint();
- sheet.setValue(2, 1, "name");
- sheet.setValue(2, 2, "age");
- sheet.setValue(3, 1, "Jack");
- sheet.setValue(4, 1, "Lily");
- sheet.setValue(5, 1, "John");
- sheet.setValue(6, 1, "Mary");
- sheet.setValue(3, 2, 19);
- sheet.setValue(4, 2, 21);
- sheet.setValue(5, 2, 22);
- sheet.setValue(6, 2, 25);
- sheet.setText(8, 0, "Average Age:");
- sheet.setText(9, 0, "Max Age:");
- sheet.setText(10, 0, "Min Age:");
- sheet.addSpan(8, 0, 1, 2);
- sheet.addSpan(9, 0, 1, 2);
- sheet.addSpan(10, 0, 1, 2);
- sheet.setFormula(8, 2, "=AVERAGE(C4:C7)");
- sheet.setFormula(9, 2, "=MAX(C4:C7)");
- sheet.setFormula(10, 2, "=MIN(C4:C7)");
- var showFormulaCells = [];
- $("#showFormula").bind("click", function () {
- sheet.suspendPaint();
- var rowCount = sheet.getRowCount();
- var columnCount = sheet.getColumnCount();
- for(var i=0; i<rowCount; i++){
- for (var j = 0; j < columnCount; j++) {
- var formula = sheet.getFormula(i,j);
- if(formula){
- sheet.setFormula(i,j, "");
- sheet.setText(i,j, "=" + formula);
- showFormulaCells.push({
- rowNum : i ,
- colNum : j ,
- formula : formula
- });
- }
- }
- }
- sheet.resumePaint();
- });
- $("#hideFormula").bind("click", function () {
- if(showFormulaCells.length === 0){
- return;
- }
- sheet.suspendPaint();
- for(var i=0; i<showFormulaCells.length; i++){
- var row = showFormulaCells[i]["rowNum"];
- var col = showFormulaCells[i]["colNum"];
- var formula = showFormulaCells[i]["formula"];
- sheet.setFormula(row, col, "=" + formula);
- }
- showFormulaCells = [];
- sheet.resumePaint();
- });
- // 恢复表格绘制操作.
- sheet.resumePaint();
- }
复制代码
html代码:
- <html>
- <head>
- <meta charset="UTF-8" />
- <link rel="stylesheet" type="text/css" href="resources/css/spread/gc.spread.sheets.excel2013white.11.2.2.css">
- <script src="resources/js/jquery-1.8.2.min.js" type="text/javascript"></script>
- <script src="resources/js/spread/gc.spread.sheets.all.11.2.2.min.js" type="text/javascript"></script>
- <script src="resources/js/spread/gc.spread.sheets.resources.zh.11.2.2.min.js" type="text/javascript"></script>
- <script src="index_4.js" type="text/javascript"></script>
- </head>
- <body>
- <div id='ss' style='width:100%; height:800px;'></div>
- <div>
- <button id="showFormula">显示公式</button>
- <button id="hideFormula">隐藏公式</button>
- </div>
- </body>
- </html>
复制代码 |