找回密码
 立即注册

QQ登录

只需一步,快速开始

uioae

注册会员

10

主题

35

帖子

119

积分

注册会员

积分
119
uioae
注册会员   /  发表于:2021-5-14 14:10  /   查看:4054  /  回复:11
spread 表格列中怎么展示 时间控件呢?

11 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-14 14:30:30
沙发
您好,您描述中所说的 时间控件 具体指的是什么呢?
建议您结合业务情况详细的描述下。
回复 使用道具 举报
uioae
注册会员   /  发表于:2021-5-14 14:39:49
板凳
Lynn.Dou 发表于 2021-5-14 14:30
您好,您描述中所说的 时间控件 具体指的是什么呢?
建议您结合业务情况详细的描述下。

就是 普通的 年月日下拉控件
回复 使用道具 举报
uioae
注册会员   /  发表于:2021-5-14 14:57:09
地板
image.png467294921.png   这样的使用场景
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-14 15:01:34
5#
SpreadJS 提供了 单元格下拉框-日期选择器,您可以在设计器中通过UI 或者 通过代码 设置:代码请参考学习指南示例dmeo,链接如下:
https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/cells/drop-downs/date-time-picker/purejs

image.png169309996.png

另,您指的“表格列中”指的是什么呢?
1、如果是给sheet某一列设置 日期选择器,示例代码如下:
  1. var cellButton = [
  2.         {
  3.             imageType: GC.Spread.Sheets.ButtonImageType.dropdown,
  4.             command: "openDateTimePicker",
  5.             useButtonStyle: true,
  6.         }
  7.     ];
  8. sheet.getRange(-1,0,-1,1).cellButtons(cellButton)
复制代码
2、如果是给table某列设置 日期选择器,选择table的指定区域range,然后参考上方代码。

回复 使用道具 举报
uioae
注册会员   /  发表于:2021-5-14 15:39:48
6#
Lynn.Dou 发表于 2021-5-14 15:01
SpreadJS 提供了 单元格下拉框-日期选择器,您可以在设计器中通过UI 或者 通过代码 设置:代码请参考学习指 ...

照我的理解, 其实时间选择器其实是下拉框的一种方式; 为什么 下拉框可以配置
  1. let  cellType = new GC.Spread.Sheets.CellTypes.ComboBox();
  2.         let opt = options.map(i=>{
  3.           return {
  4.             ...i,
  5.             text: i.label,
  6.           }

  7.         })
  8.         cellType.items(opt);
  9.         cellType.editorValueType(GC.Spread.Sheets.CellTypes.EditorValueType.value)
复制代码


想问下, 时间有没有类似的配置呢?
回复 使用道具 举报
panqz
初级会员   /  发表于:2021-5-14 16:02:42
7#
日期选择器是否支持对年月的限制。如年报表只需选择到年。目前设置年,仍需选择到日,单元格显示年数据。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-14 16:22:27
8#
目前SJS日期选择器不支持年月限制。
SJS支持通过自定义单元格与第三方组件集成实现日期选择单元格,
不过是否能具体限制年月,还需您自己调研测试下。
示例demo链接:
https://demo.grapecity.com.cn/Sp ... emos/datePickerCell
回复 使用道具 举报
uioae
注册会员   /  发表于:2021-5-14 16:57:38
9#
本帖最后由 uioae 于 2021-5-14 16:59 编辑
Lynn.Dou 发表于 2021-5-14 16:22
目前SJS日期选择器不支持年月限制。
SJS支持通过自定义单元格与第三方组件集成实现日期选择单元格,
不过 ...

但是我想问的 时间选择器  能不能通过 类似下面的方式 配置出来
  1. let  cellType = new GC.Spread.Sheets.CellTypes.ComboBox();
  2. let opt = options.map(i=>{
  3.   return {
  4.     ...i,
  5.     text: i.label,
  6.   }

  7. })
  8. cellType.items(opt);
  9. cellType.editorValueType(GC.Spread.Sheets.CellTypes.EditorValueType.value)

  10. return cellType;
复制代码


回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-14 17:17:55
10#
抱歉,本贴多个用户咨询,误漏了您的回复。
cellType为单元格类型,SJS内置的单元格时间选择器实质为cellButton。
您代码所示为自定义单元格,这不适用于 cellButton,所以无法通过这种方式配置。
image.png908124084.png
上图这种选择方式,是通过CellTypes.ComboBox() 来实现的下拉选择。
这种方式下,只能选择设置的数据,不能打开时间控件,所以还是建议您通过 单元格下拉框-时间选择器 来实现。
如果您想通过 自定义单元格 实现日期选择器,这需要二次开发,可以参考之前提供给您的参考demo链接:
https://demo.grapecity.com.cn/SpreadJS/cdn/extendedExample/#/demos/datePickerCell


如果 单元格下拉框-时间选择器 不满足您的需求,您可以详细描述下,这边看下是否有合适的方案。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部