FineUI 官方论坛

标题: 【已确认】树控件复选框级联选择(无法获取全部选中节点 [打印本页]

作者: SNYG    时间: 2019-8-1 16:39
标题: 【已确认】树控件复选框级联选择(无法获取全部选中节点
版本:FineUICore 5.5.0

Tree控件在使用复选框和启用级联选择属性时,js脚本使用 getCheckedNodes() 方法不会同步获取到级联选择的节点

作者: sanshi    时间: 2019-8-1 17:10
截图看下效果,哪些节点?
作者: SNYG    时间: 2019-8-2 09:40
sanshi 发表于 2019-8-1 17:10
截图看下效果,哪些节点?

问题描述的不是很清楚,代码重现了,一切尽在代码中
作者: sanshi    时间: 2019-8-2 09:56
SNYG 发表于 2019-8-2 09:40
问题描述的不是很清楚,代码重现了,一切尽在代码中

级联选择操作可能会晚于 nodecheck 事件的触发,所以目前你可以加个延迟来实现:
  1. function showResult() {
  2.             var result = "";

  3.             var checkedNodes = F.ui.Tree1.getCheckedNodes(true);
  4.             if (checkedNodes.length) {
  5.                 result = "复选框选中的节点:";
  6.                 result += "<ul>";
  7.                 $.each(checkedNodes, function (index, node) {
  8.                     result += "<li>" + node.text + "(" + node.id + ")</li>";
  9.                 });
  10.                 result += "</ul>";
  11.             }

  12.             F.ui.labResult.setText(result);
  13.         }

  14.         function onTreeNodeCheck() {
  15.             window.setTimeout(function () {
  16.                 showResult();
  17.             }, 100);
  18.         }
复制代码



当然,我也觉得这个地方有点说不到过去,最好能先处理完级联选择,然后再触发nodecheck事件,下个版本(v5.6.0)我们会修正一下,这样你的代码就不用改了!








欢迎光临 FineUI 官方论坛 (https://www.fineui.com/bbs/) Powered by Discuz! X3.4