找回密码
 立即注册

QQ登录

只需一步,快速开始

南渡北归

注册会员

3

主题

10

帖子

71

积分

注册会员

积分
71
最新发帖
南渡北归
注册会员   /  发表于:2021-2-1 11:43  /   查看:5124  /  回复:8
10金币


问题描述:
需求是进入该表格页面,会传一个值来判断,是单选框还是多选框(复选框);此处单选框是该表只能选一项;复选框则可以多选。
我自己查api调试代码,感觉应该是自动根据源代码循环出来checkbox的。现在不知道如何实现该功能,大佬给点提示解决思路。

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

8 个回复

倒序浏览
南渡北归
注册会员   /  发表于:2021-2-1 11:52:23
沙发
2.顺便问一下,取出选中行数据按钮,回显选中行按钮;这两个按钮触发之后,打印返回的数据为空,这个是为什么……大佬求指点(demo中里面写了假数据,如果能点击按钮实现功能,那么就能console打印出非空数组来)。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-2-1 17:25:34
板凳
您好:
1. 关于单选的问题, 要实现Radio比较困难, 如果只想选中单行, 推荐用single row的选择模式,参考示例:
https://www.grapecity.com/wijmo/ ... ion/Overview/purejs



2. 具体指的是哪个Demo? 如果是你自己实现的Demo, 能否提供一个可执行的Demo包?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
南渡北归
注册会员   /  发表于:2021-2-1 17:43:43
地板
KevinChen 发表于 2021-2-1 17:25
您好:
1. 关于单选的问题, 要实现Radio比较困难, 如果只想选中单行, 推荐用single row的选择模式,参考示例 ...

你好,此处追加的问题2,和问题1都是公用第一个demo;即flexgrid.gar那个包
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-2-1 21:16:32
5#
你好, 从实现上看, 这部分代码与产品没有关联, 建议仔细Debug你的代码实现.
回复 使用道具 举报
南渡北归
注册会员   /  发表于:2021-2-2 14:49:35
6#
KevinChen 发表于 2021-2-1 17:25
您好:
1. 关于单选的问题, 要实现Radio比较困难, 如果只想选中单行, 推荐用single row的选择模式,参考示例 ...

是这样的,我这边是想用checkbox的复选框实现单选的功能(类似于radio)。flexgrid封装的功能或api是不能实现么,是需要我自己想办法写是吧;
回复 使用道具 举报
南渡北归
注册会员   /  发表于:2021-2-2 14:52:58
7#
南渡北归 发表于 2021-2-2 14:49
是这样的,我这边是想用checkbox的复选框实现单选的功能(类似于radio)。flexgrid封装的功能或api是不能 ...

版主您好,我还是需要有一个勾选框不知道好不好实现
回复 使用道具 举报
南渡北归
注册会员   /  发表于:2021-2-2 17:46:25
8#
KevinChen 发表于 2021-2-1 21:16
你好, 从实现上看, 这部分代码与产品没有关联, 建议仔细Debug你的代码实现.

版主打扰了。请问您,checkbox这个勾选框在flexgrid里面,有没有出发的时间event;问一下。
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-2-2 17:55:24
9#
南渡北归 发表于 2021-2-2 17:46
版主打扰了。请问您,checkbox这个勾选框在flexgrid里面,有没有出发的时间event;问一下。

你好,可以监听CellEditEnded事件,判断一下绑定列或值得类型即可,参考以下代码:

  1. import 'bootstrap.css';
  2. import '@grapecity/wijmo.styles/wijmo.css';
  3. import { SortDescription, format } from '@grapecity/wijmo';
  4. import { FlexGrid } from '@grapecity/wijmo.grid';
  5. document.readyState === 'complete' ? init() : window.onload = init;
  6. function init() {
  7.     // create some random data
  8.     var countries = 'US,Germany,UK,Japan,Italy,Greece'.split(',');
  9.     var data = [];
  10.     for (var i = 0; i < countries.length; i++) {
  11.         data.push({
  12.             id: i,
  13.             country: countries[i],
  14.             sales: Math.random() * 10000,
  15.             expenses: Math.random() * 5000,
  16.             bool: true
  17.         });
  18.     }
  19.     // bind a grid to the raw data
  20.     var theGrid = new FlexGrid('#theGrid', {
  21.         autoGenerateColumns: false,
  22.         columns: [
  23.             { binding: 'country', header: 'Country', width: '2*' },
  24.             { binding: 'sales', header: 'Sales', width: '*', format: 'n2' },
  25.             { binding: 'expenses', header: 'Expenses', width: '*', format: 'n2' },
  26.             { binding: 'bool', header: 'Bool'}
  27.         ],
  28.         itemsSource: data,
  29.         cellEditEnded: (s, e) => {
  30.             console.log(s, e)
  31.         }
  32.     });
  33.     // show the current item
  34.     var selItemElement = document.getElementById('selectedItem');
  35.     function updateCurrentInfo() {
  36.         selItemElement.innerHTML = format('Country: <b>{country}</b>, Sales: <b>{sales:c0}</b> Expenses: <b>{expenses:c0}</b>', theGrid.collectionView.currentItem);
  37.     }
  38.     // update current item now and when the grid selection changes
  39.     updateCurrentInfo();
  40.     theGrid.collectionView.currentChanged.addHandler(updateCurrentInfo);
  41.     // sort the data by country
  42.     var sd = new SortDescription('country', true);
  43.     theGrid.collectionView.sortDescriptions.push(sd);
  44. }
复制代码


把上述代码放到实例的app.js里即可看到效果:
https://www.grapecity.com/wijmo/ ... nding/Basics/purejs

注意看控制台,打印的参数内容中有你需要的信息。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部