葡萄城SpreadJs

SpreadJS

添加对您在购买产品时收到的SpreadJS许可证的引用。 在工作簿初始化之前添加引用。 例如:


或者





// licensekey.js file:
GC.Spread.Sheets.LicenseKey = "xxxxxx";

 导如文件:

将文件导入SpreadJS < 快速入门 < 快速开始 | 葡萄城 SpreadJS 表格控件在线文档

 常用的是:加载数据模板:导入JSON文件到SpreadJS实例

  • 创建 importSpreadFromJSON 函数导入一个JSON文件。
  • 创建一个新的 FileReader 并将其存储在'reader'变量中。
  • 使用FileReader.readAsText函数将JSON文件的内容读取为字符串。onload事件在FileReader完成后触发。
  • 调用 importSuccessCallback 方法,使用 JSON.parse 将结果解析为JavaScript对象。
//3: 创建 importSpreadFromJSON()
function importSpreadFromJSON(file) {
    function importSuccessCallback(responseText) {
        // 解析JSON字符串
        var spreadJson = JSON.parse(responseText);
        // 执行importJSON方法从解析的JSON字符串加载SpreadJS实例
        importJSON(spreadJson);
    }
    // 创建一个文件来读取JSON字符串
    var reader = new FileReader();
    // 当下面的readAsText()完成时,将触发此事件以成功返回回调
    reader.onload = function () {
        importSuccessCallback(this.result);
    };
    // 触发readAsText()方法
    // 这将读取文件的内容,并在完成时触发加载事件
    reader.readAsText(file);
    return true;
}

 添加批注

var re='批注内容'
//添加样式
var style = new spreadNS.Style();
//设置颜色
style.backColor = "yellow";
//批注内容                                       
sheet.comments.add(i, 3, re);
//设置批注
sheet.setStyle(i, 3, style, spreadNS.SheetArea.viewport);

动态表头:

/**
 * 根据sheet名称、数据绘制excel表格
 * sheetName 新建的sheet名称
 * data 创建sheet的数据
 * isFirst 是否是一个sheet,如果是第一个则不需要更改sheet数量
 */
function loadTableHead(sheetName,data,isFirst) {
    var option = {
        allowSelectLockedCells: true,//用户是否可以选中被锁定的单元格。
        allowSelectUnlockedCells: true,//用户是否可以选中未被锁定的单元格。
        allowFilter: true,//用户是否可以对一片单元格区域进行筛选。
        allowSort: false,//用户是否可以对一片单元格区域进行排序。
        allowResizeRows: true,//用户是否可以改变行高。
        allowResizeColumns: false,//用户是否可以改变列宽。
        allowEditObjects: false,//用户是否可以编辑浮动元素。
        allowDragInsertRows: false,//用户是否可以拖拽插入行。
        allowDragInsertColumns: false,//用户是否可以拖拽插入列。
        allowInsertRows: false,//用户是否可以插入行。
        allowInsertColumns: false,//用户是否可以插入列。
        allowDeleteRows: false,//用户是否可以删除行。
        allowDeleteColumns: false//用户是否可以删除列。
    };
    var sheet;
    if(isFirst){
        sheet = spread.getActiveSheet();
    }else{
        spread.setSheetCount(spread.getSheetCount()+1);
        var sheetCount = spread.getSheetCount();
        sheet = spread.getSheet(sheetCount-1);
    }
    sheet.options.protectionOptions = option;
    sheet.options.isProtected = true;   //报表是否受保护
    sheet.setDataSource(data);
    sheet.name(sheetName);
    excelDefaultStyle(sheet);
}

/*加载excel默认样式*/
function excelDefaultStyle(sheet) {
    var style = new GC.Spread.Sheets.Style();
    var styleLock = new GC.Spread.Sheets.Style();
    style.locked = false,styleLock.locked = true;
    sheet.frozenRowCount(1);//冻结第1行
    sheet.setColumnCount(26);//默认26列
    /*前3列锁定*/
    sheet.setStyle(-1, 0, styleLock);
    sheet.setStyle(-1, 1, styleLock);
    sheet.setStyle(-1, 2, styleLock);
    /*前3列宽度*/
    sheet.setColumnWidth(0, 90);
    sheet.setColumnWidth(1, 200);
    sheet.setColumnWidth(2, 90);

    sheet.setStyle(-1, 3, style);
    sheet.setStyle(0, -1, style);
    for(var index = 0; index < 26; index ++){
        if(index > 2){
            /*前3列锁定,后面列不锁定*/
            sheet.setColumnWidth(index, 100);
            sheet.setStyle(-1, index+1, style);
        }
        sheet.getCell(0, index)
            .font('bold normal 15px normal')
            .vAlign(GC.Spread.Sheets.VerticalAlign.center)
            .hAlign(GC.Spread.Sheets.HorizontalAlign.center);
    }
    sheet.setRowHeight(0,30);//设置首行行高
}





                                         

你可能感兴趣的:(javascript,服务器,开发语言,html5)