# SpreadJS_DropDownBox **Repository Path**: GrapeCity/SpreadJS_DropDownBox ## Basic Information - **Project Name**: SpreadJS_DropDownBox - **Description**: 添加下拉框选则表单功能 - **Primary Language**: CSS - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-06-27 - **Last Updated**: 2022-07-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SpreadJS_DropDownBox 添加下拉框选则表单功能 ### SpreadJS 示例,扩展工作表Tab右键功能-实现选择工作表下拉框 该示例包括使用 SpreadJS API 的演示脚本,可用于实现扩展工作表Tab右键功能-实现选择工作表下拉框 有关 SpreadJS API 的更多信息,请参阅[SpreadJS API指南]( https://demo.grapecity.com.cn/spreadjs/help/api/) 和[帮助手册]( https://help.grapecity.com.cn/pages/viewpage.action?pageId=5963808)。 ![输入图片说明](%E5%9B%BE%E7%89%877.gif) ### 运行步骤 1、在开始之前,请确保您已满足以下先决条件: 要运行 SpreadJS,浏览器必须支持 HTML5,客户端导入和导出 Excel 需要 IE10及以上。 请先了解 [SpreadJS 的产品使用环境]( https://www.grapecity.com.cn/developer/spreadjs/selection-guide/product-use-environment),并申请临时部署授权激活 安装并更新NodeJS和NPM 2、克隆或下载此代码库 3、初始化控件,并运行示例脚本 #### 控件初始化 首先,创建一个新页面,并在页面上输入以下代码: ``` SpreadJS HTML Test Page ``` 2、在页面中添加对 SpreadJS 的引用。代码如下。需要注意的是,SpreadJS 提供压缩过 ``` //(minified)的 JavaScript 文件和和用于调试的文件: ``` 3、添加 CSS 文件以改变Spread.JS 的外观。默认的CSS文件名为: gc.spread.sheets.xxxx.css,里面包含了所有的默认样式。该 CSS 文件将会影响滚动条,筛选框及其子元素,单元格和下方标签栏的样式。引入 CSS 的代码如下: ``` // ``` 4、添加产品授权,代码为(本地测试可以不添加): ``` GC.Spread.Sheets.LicenseKey = "xxx"; ``` 5. 添加控件初始化代码。本例会在一个 id 为 “ss” 的 DOM 元素上初始化 SpreadJS: ``` ``` 6、 创建一个 id 为 “ss” 的元素,SpreadJS 将在该 DOM 中初始化: ```
``` #### 示例代码 ``` HTML:

扩展工作表Tab右键功能-实现选择工作表下拉框

在工作表名称处右键可以看到选择表单的选项
CSS: #ss{ width: 100%; height: 360px; } p{ color: #336699; text-align: center; } JavaScript: // Title:选择表单对话框 // Description:表单名称右键选择表单对话框 // Tag:表单名称,对话框 window.onload = function() { var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), { sheetCount: 20 }); var openDialog = { text: "选择工作表", name: "selectSheetDialog", command: selectSheetDialog, workArea: "sheetTab" }; spread.contextMenu.menuData.push(openDialog); }; function selectSheetDialog(spread) { console.log(arguments) if (document.getElementsByClassName('sheetListBox').length === 0) { var sheetListBox = document.createElement('div'); sheetListBox.className = 'sheetListBox'; sheetListBox.innerHTML = '' + '' + '
' + ''; document.body.appendChild(sheetListBox); document.getElementById('cancelBtn').onclick = function() { sheetListBox.style.display = 'none'; }; document.getElementById('sheetSelectList').onchange = function() { var selectIndex = this.selectedIndex; spread.setActiveSheetIndex(selectIndex); spread.startSheetIndex(selectIndex); sheetListBox.style.display = 'none'; }; } var sheetSelectList = document.getElementById('sheetSelectList'); sheetSelectList.innerHTML = ""; for (var i = 0; i < spread.sheets.length; i++) { var opt = document.createElement('option'); opt.value = i; opt.innerHTML = spread.sheets[i].name(); sheetSelectList.appendChild(opt); } var loginBoxEle = document.getElementsByClassName('sheetListBox')[0]; if (loginBoxEle.style.display === 'none') { loginBoxEle.style.display = 'block'; } } ``` #### 关于 SpreadJS [SpreadJS]( https://www.grapecity.com.cn/developer/spreadjs) 是一款基于 HTML5 的纯前端表格控件,兼容 450 多种 Excel 公式,具备“高性能、跨平台、与 Excel 高度兼容”的产品特性。使用 SpreadJS,可直接在 Angular、 React、 Vue 等前端框架中实现高效的模板设计、在线编辑和数据绑定等功能,为最终用户提供高度类似 Excel 的使用体验。 ![输入图片说明](https://gitee.com/GrapeCity/spread-js_-cell-display-box-fills-uspecific-number/raw/master/%E5%9B%BE%E7%89%873.jpg)