[]
你可以使用 fromJSON 方法 和 toJSON 方法 从 JSON 对象导入数据或将数据导出为 JSON 对象。
从 JSON 对象导入数据时,你可以为自定义数据导入设置多个反序列化选项。这些选项包括 ignoreStyle(忽略样式)、ignoreFormula(忽略公式)、frozenColumnsAsRowHeaders(将冻结列作为行标题)、frozenRowsAsColumnHeaders(将冻结行作为列标题)以及 doNotRecalculateAfterLoad(加载后不重新计算)。
将数据导出为 JSON 对象时,你可以为导出自定义数据设置多个序列化选项。这些选项包括 includeBindingSource(包含绑定源)、ignoreStyle(忽略样式)、ignoreFormula(忽略公式)、saveAsView(另存为视图)、rowHeadersAsFrozenColumns(将行标题作为冻结列)、columnHeadersAsFrozenRows(将列标题作为冻结行)、includeAutoMergedCells(包含自动合并的单元格)以及 saveR1C1Formula(保存 R1C1 公式)。
早期版本的SpreadJS无法加载使用SpreadJS 3.20142.11或更高版本创建的JSON文件。
本示例导出到JSON对象并从JSON对象导入。
workbook.fromJSON(jsonData, {
ignoreFormula: true,
ignoreStyle: true,
frozenColumnsAsRowHeaders: false,
frozenRowsAsColumnHeaders: false,
doNotRecalculateAfterLoad: true,
});
workbook.toJSON({
ignoreFormula: true,
ignoreStyle: true,
rowHeadersAsFrozenColumns: true,
columnHeadersAsFrozenRows: true,
});此Visual Studio示例加载 ssjson 文件。
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, visit http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".ssjson" mimeType="text/plain" />
</staticContent>
</system.webServer>
</configuration><!DOCTYPE html>
<html lang="en">
<head>
<title>TestLoad ssjson</title>
<!--SpreadJS Widgets CSS-->
<link href="./css/gc.spread.sheets.13.0.0.css" rel="stylesheet" type="text/css" />
<!--jQuery Reference-->
<script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
<!--SpreadJS Widgets JavaScript-->
<script src="./scripts/gc.spread.sheets.all.13.0.0.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:3});
$.ajax({
url: "TestFile.ssjson",
datatype: "json",
success: function (data) {
//here to load ssjson file.
spread.suspendPaint();
spread.fromJSON(JSON.parse(data));
spread.resumePaint();
},
error: function (ex) {
alert('Exception:' + ex);
}
});
});
</script>
</head>
<body>
<div class="container">
<div class="header">
<h2>Sample for load .ssjson file</h2>
</div>
<div id="ss" style="width: 100%; height: 430px; border: 1px solid gray;"></div>
</div>
</body>
</html>