找回密码
 立即注册

QQ登录

只需一步,快速开始

lxtxqr

注册会员

5

主题

14

帖子

57

积分

注册会员

积分
57
lxtxqr
注册会员   /  发表于:2019-3-8 15:25  /   查看:6444  /  回复:10
本帖最后由 lxtxqr 于 2019-3-8 16:17 编辑

WjTreeView checkbox如何设置初始值
checkeditems 设置后没有反应 初始选择某一个checkbox 如何做到
求助

10 个回复

倒序浏览
lxtxqr
注册会员   /  发表于:2019-3-9 22:28:38
沙发
有人用过么?求解答。难道这个控件的check不能有初始值么?接口没留么
回复 使用道具 举报
lxtxqr
注册会员   /  发表于:2019-3-9 23:39:28
板凳
没有技术人员给解决这个问题么,TreeView控件提供了Checkbox,但是没有办法在初期的时候默认选中,你们提供这个控件是做什么用?太坑了。

本帖子中包含更多资源

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

x
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-3-11 18:26:09
地板
您好,请参考Wijmo TreeView的API,selectedItem:

https://demos.wijmo.com/5/Angula ... s.html#selectedItem
回复 使用道具 举报
lxtxqr
注册会员   /  发表于:2019-3-12 23:19:02
5#
KevinChen 发表于 2019-3-11 18:26
您好,请参考Wijmo TreeView的API,selectedItem:

https://demos.wijmo.com/5/Angular/WijmoHelp/Wijmo ...

多谢回答,提供的网站打开是空白的
selecteditem是可以自定义赋值的么?大概是什么格式
我使用的是
this.items = [{header:Electronics}];
this.tvTreeView.selectedItem = this.items;
Treeview控件绑定的数据源就是官网例子。
但是checkbox无法绑定
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2019-3-13 09:49:27
6#
请参照
  1.    ///////////////////////////////////////////////////////////////////////
  2.     // Checkboxes
  3.     var tvChk = new wijmo.nav.TreeView('#tvChk', {
  4.         displayMemberPath: 'header',
  5.         childItemsPath: 'items',
  6.         showCheckboxes: true,
  7.         itemsSource: items,
  8.         checkedItemsChanged: function (s, e) {
  9.             var items = s.checkedItems,
  10.                 msg = '';
  11.             if (items.length) {
  12.                 msg = '<p><b>Checked Items:</b></p><ol>\r\n';
  13.                 for (var i = 0; i < items.length; i++) {
  14.                     msg += '<li>' + items[i].header + '</li>\r\n';
  15.                 }
  16.                 msg += '</ol>';
  17.             }
  18.             document.getElementById('tvChkStatus').innerHTML = msg;
  19.         }
  20.     });

  21.     // check/uncheck all nodes
  22.     document.getElementById('btnCheckAll').addEventListener('click', function () {
  23.         tvChk.checkAllItems(true);
  24.     });
  25.     document.getElementById('btnUncheckAll').addEventListener('click', function () {
  26.         tvChk.checkAllItems(false);
  27.     });

  28.     // save/restore checked state
  29.     var saveCheckedItems = null;
  30.     document.getElementById('btnSaveState').addEventListener('click', function () {
  31.         saveCheckedItems = tvChk.checkedItems;
  32.     });
  33.     document.getElementById('btnRestoreState').addEventListener('click', function () {
  34.         tvChk.checkedItems = saveCheckedItems || [];
  35.     });
复制代码
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
lxtxqr
注册会员   /  发表于:2019-3-14 16:47:43
7#
本帖最后由 lxtxqr 于 2019-3-14 17:04 编辑

多谢回复 这个例子之前在你们网站看到了。但是无法解决我的问题。
例子中,只是把SelectedItem对象保存后,恢复按钮按下再传递给 TreeView的SelectedItem对象。

如果我想在初期选中某一个CheckBox,需要传递一个什么结构的对象给 SelectedItem才能好用?
我想自定义SelectedItem?请问结构大概什么样?请指教
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2019-3-15 09:08:44
8#
您好,这个selectedItem  也是node的类型,您的这个问题我先尝试写一个demo 看是否能能做到您说的这个需求,有消息回复您
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2019-3-18 09:35:51
9#
您好,请参考 如下代码
  1. // create the tree
  2.   var tree = new wijmo.nav.TreeView('#theTree', {
  3.     itemsSource: getData(),
  4.     displayMemberPath: 'header',
  5.     childItemsPath: 'items',
  6.     showCheckboxes: true
  7.   });

  8.   // initialize the checked items
  9.   tree.checkedItems = [
  10.     findItem(tree, 'Apple'),
  11.     findItem(tree, 'Motorola'),
  12.     findItem(tree, 'Samsung'),
  13.     findItem(tree, 'Shopkins'),
  14.     findItem(tree, 'Crayola')
  15.   ]

  16.   // find a data item in the tree based on the displayMemberPath value
  17.   function findItem(tree, value, items) {
  18.     if (!items) {
  19.       items = tree.itemsSource;
  20.     }
  21.     for (var i = 0; i < items.length; i++) {
  22.       var item = items[i];
  23.       if (item[tree.displayMemberPath] == value) {
  24.         return item;
  25.       }
  26.       var childItems = item[tree.childItemsPath];
  27.       if (childItems) {
  28.         var child = findItem(tree, value, childItems);
  29.         if (child) {
  30.           return child;
  31.         }
  32.       }
  33.     }
  34.     return null;
  35.   }

  36.   // get the tree data
  37.   function getData() {
  38.     return [{
  39.         header: 'Electronics',
  40.         img: 'resources/electronics.png',
  41.         items: [{
  42.             header: 'Trimmers/Shavers'
  43.           },
  44.           {
  45.             header: 'Tablets'
  46.           },
  47.           {
  48.             header: 'Phones',
  49.             img: 'resources/phones.png',
  50.             items: [{
  51.                 header: 'Apple'
  52.               },
  53.               {
  54.                 header: 'Motorola',
  55.                 newItem: true
  56.               },
  57.               {
  58.                 header: 'Nokia'
  59.               },
  60.               {
  61.                 header: 'Samsung'
  62.               }
  63.             ]
  64.           },
  65.           {
  66.             header: 'Speakers',
  67.             newItem: true
  68.           },
  69.           {
  70.             header: 'Monitors'
  71.           }
  72.         ]
  73.       },
  74.       {
  75.         header: 'Toys',
  76.         img: 'resources/toys.png',
  77.         items: [{
  78.             header: 'Shopkins'
  79.           },
  80.           {
  81.             header: 'Train Sets'
  82.           },
  83.           {
  84.             header: 'Science Kit',
  85.             newItem: true
  86.           },
  87.           {
  88.             header: 'Play-Doh'
  89.           },
  90.           {
  91.             header: 'Crayola'
  92.           }
  93.         ]
  94.       },
  95.       {
  96.         header: 'Home',
  97.         img: 'resources/home.png',
  98.         items: [{
  99.             header: 'Coffee Maker'
  100.           },
  101.           {
  102.             header: 'Breadmaker',
  103.             newItem: true
  104.           },
  105.           {
  106.             header: 'Solar Panel',
  107.             newItem: true
  108.           },
  109.           {
  110.             header: 'Work Table'
  111.           },
  112.           {
  113.             header: 'Propane Grill'
  114.           }
  115.         ]
  116.       }
  117.     ];
复制代码
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
lxtxqr
注册会员   /  发表于:2019-3-20 12:53:56
10#
JeffryLI 发表于 2019-3-18 09:35
您好,请参考 如下代码

感谢~ 我一会试试。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部