1. 你可以用toJSON fromJSON 来实现:
spread.addSheet();
var newSheet = spread.getSheet(spread.getSheetCount()-1);
newSheet.fromJSON(JSON.parse(JSON.stringify(spread.getActiveSheet().toJSON())));
newSheet.setName("newSheet");
2. spread.removeSheet(0);
3. 你可以通过事件取消用户改名的行为,但不太好控制用户不能尝试改某些 sheet 的名字:
newSheet.bind(GcSpread.Sheets.Events.SheetNameChanging, function (data, args) {
args.cancel = true;
});
至于删除 sheet, SpreadJS 本身并没有提供 UI 来删除 sheet, 所有删除 sheet 的行为都是你通过代码实现的,所以只需要在你自己的逻辑里面控制就行了。 |