找回密码
 立即注册

QQ登录

只需一步,快速开始

一蓑烟雨

初级会员

14

主题

49

帖子

368

积分

初级会员

积分
368
一蓑烟雨
初级会员   /  发表于:2020-12-3 10:35  /   查看:7450  /  回复:11
如图,在spreadjs中如何设置下拉选择框?
19RJ3%@P96[69U0Q@~N2MQP.png

11 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-3 12:02:26
沙发
您好,您所说下拉选择框具体指的是什么呢?想实现什么样的需求呢?
SJS提供了 普通组合框单元格 和 单元格下拉菜单-列表,均有下拉功能。
具体如何设置请参考学习指南:
普通组合框单元格:https://demo.grapecity.com.cn/sp ... pes/combobox/purejs
单元格下拉菜单:
https://demo.grapecity.com.cn/sp ... p-downs/list/purejs
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-12-3 13:55:34
板凳
如果我想使用列表让某一列的单元格都绑定下拉框代码该如何实现?目前只能让某一个单元格绑定下拉框。

页面

页面

代码

代码
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-3 14:14:56
地板
给第一列设置cellButtons,示例代码如下:
sheet.setStyle(-1, 0, style);
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-12-3 14:40:12
5#
能否限定范围?
0`6GNG0HB`RH(BZ@RP[2LFW.png
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-3 18:01:54
6#
您可以参考下图代码: image.png634913329.png
  1. sheet.getRange(1,1,5,1).cellButtons(cellB);
复制代码


回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-12-4 10:48:02
7#
绑定选项的代码该怎么写?像下面的代码这样写对不对?另外图中出现两个按钮,能否只保留一个?

  var cellB = [{
                imageType: GC.Spread.Sheets.ButtonImageType.dropdown,
                command: "openList",
                useButtonStyle: false,
                dropDowns: {
                    type: GC.Spread.Sheets.DropDownType.list,
                    option: {
                        items: [
                            {
                                text: 'item1',
                                value: 'item1'
                            },
                            {
                                text: 'item2',
                                value: 'item2'
                            },
                            {
                                text: 'item3',
                                value: 'item3'
                            },
                            {
                                text: 'item4',
                                value: 'item4'
                            }
                        ],
                    }
                }
            },
            {
                imageType: GC.Spread.Sheets.ButtonImageType.dropdown,
                command: (sheet, row, col, option) => {
                    console.log(option);
                }
            }];

            sheet.getRange(1, 1, 5, 1).cellButtons(cellB);

R%BWEQ{CZWEX6K$E%C}CZ@1.png
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-4 12:03:02
8#
参考以下代码:var cellButtons = [
        {
            imageType: GC.Spread.Sheets.ButtonImageType.dropdown,
            command: "openList",
            useButtonStyle: true,
        }
    ];

var dropDowns = [
        {
            type: GC.Spread.Sheets.DropDownType.list,
            option: {
                items: [
                    {
                        text: 'item1',
                        value: 'item1'
                    },
                    {
                        text: 'item2',
                        value: 'item2'
                    },
                    {
                        text: 'item3',
                        value: 'item3'
                    },
                    {
                        text: 'item4',
                        value: 'item4'
                    }
                ],
            }
        }
    ]

sheet.getRange(1, 1, 5, 1).cellButtons(cellButtons).dropDowns(dropDowns);
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-12-4 13:47:45
9#
非常感谢!另外再请教一下如何禁止绑定下拉框的单元格编辑,让用户只能从下拉框中选择。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-4 15:21:32
10#
参考以下代码:
sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
                var r = args.row;
                var c = args.col;
                //判断如果单元格内有cellButtons
                if(sheet.getCell(r,c).cellButtons()) {
                    args.cancel = true;
                }
            });

EditStarting 事件API: https://demo.grapecity.com.cn/sp ... ?highlight=event%2C
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部