jQuery MiniUI

标题: TreeSelect父节点显示问题 [打印本页]

作者: jissie丢    时间: 2014-4-4 11:41:21     标题: TreeSelect父节点显示问题

本帖最后由 jissie丢 于 2014-4-4 11:45 编辑

TreeSelect控件 绑定值
<input id="classtype" style="width: 180px;" class="mini-treeselect" url="ajax/ajaxhandler.ashx?method=GetClassTypeList"  multiSelect="true"  textField="text" valueField="id" parentField="pid" checkRecursive="true"
                    showFolderCheckBox="true"  expandOnLoad="true" showClose="true"
                    popupWidth="200" autoCheckParent="true" />
取值:
var tree = mini.get("classtype");
var value = tree.getValue(true);
if (value != "") {
     alert(value );//取值
     $("#hidclassid").val(value);
      return true;
}
  return false;
赋值:
$(function () {
    if ($("#hidclassid").val() != "") {
           var tree = mini.get("classtype");
            tree.setValue($("#hidclassid").val());//赋值
      }
})
//1父类 11,12子类
hidclassid.value=1,11,12

问题:
我赋值时hidclassid.value=1,11,12TreeSelect控件就把1父类下的子全部选中了,怎么只勾选有的值?






作者: lost    时间: 2014-4-4 13:23:57

本帖最后由 lost 于 2014-4-4 13:38 编辑

设置autoCheckParent="false"  是否自动选择父节点。比如选中子节点,将父节点也自动选中。

你看APIhttp://www.miniui.com/docs/api/index.html#ui=treeselect

作者: jissie丢    时间: 2014-4-4 13:43:52

lost 发表于 2014-4-4 13:23
设置autoCheckParent="false"  是否自动选择父节点。比如选中子节点,将父节点也自动选中。

你看APIhttp:/ ...

你没懂我的意思 我已经设置autoCheckParent="true"了,我保存时也取到父节点的值了 只是回绑时,父节点下的全部勾选了,怎么解决?
作者: lost    时间: 2014-4-4 13:48:33

本帖最后由 lost 于 2014-4-4 15:20 编辑
jissie丢 发表于 2014-4-4 13:43
你没懂我的意思 我已经设置autoCheckParent="true"了,我保存时也取到父节点的值了 只是回绑时,父节点下 ...

不好意思看错。设置checkRecursive="false"
作者: jissie丢    时间: 2014-4-4 14:05:50

lost 发表于 2014-4-4 13:48
不好意思看错误了。设置checkRecursive="false"

<input id="classtype" style="width: 200px;" class="mini-treeselect" url="../ybt_inc/ajax/ajaxhandler.ashx?method=GetClassTypeList"
                      multiSelect="true"
                    textField="text" valueField="id" parentField="pid" checkRecursive="true"
                    showFolderCheckBox="true"  expandOnLoad="true" showClose="true"
                    popupWidth="200" autoCheckParent="true" checkRecursive="false"/>

加了checkRecursive="false"还是没反应。

如图我赋值美食餐饮id,小饭店id, tree把美食餐饮全部勾选了,我想实现 只勾选美食餐饮id,小饭店id
[attach]4242[/attach]



作者: factory    时间: 2014-4-4 14:12:51

jissie丢 发表于 2014-4-4 14:05
加了checkRecursive="false"还是没反应。

如图我赋值美食餐饮id,小饭店id, tree把美食餐饮全部勾选了 ...

[attach]4244[/attach]

<input id="select1" class="mini-treeselect" url="../data/listTree.txt" multiSelect="true"
        textField="text" valueField="id" parentField="pid" checkRecursive="false"
        showFolderCheckBox="true"  expandOnLoad="true"
    />


作者: jissie丢    时间: 2014-4-4 14:28:02

factory 发表于 2014-4-4 14:12

触发treeselect显示是正常的,
只是我编辑页面时 页面起始加载就给treeselect赋选中值,会出现父类下全部勾选。
是不是我给数据绑定默认值有问题 代码如下:
$(function () {
      if ($("#hidclassidshow").val() != "") {
           var tree = mini.get("classtype");
           tree.setValue($("#hidclassidshow").val());
      }
})
作者: factory    时间: 2014-4-4 14:30:25

jissie丢 发表于 2014-4-4 14:28
触发treeselect显示是正常的,
只是我编辑页面时 页面起始加载就给treeselect赋选中值,会出现父类下全部 ...

我这个就是setValue()赋值的啊

function setValue() {
            var obj = mini.get("select1");
            obj.setValue("base,ajax");
        }

如果有问题,你更新下miniui试试,我这边是最新版测试的结果
作者: jissie丢    时间: 2014-4-4 14:45:54

factory 发表于 2014-4-4 14:30
我这个就是setValue()赋值的啊

function setValue() {

谢谢版主,问题解决了
问题在 autoCheckParent="true" 拿掉这个就可以了。


作者: jissie丢    时间: 2014-4-4 14:50:49

factory 发表于 2014-4-4 14:30
我这个就是setValue()赋值的啊

function setValue() {

还是有问题,去掉  autoCheckParent="true"
我勾选子类父类不一起 绑定了。
我要勾选子类就勾选父类的
作者: factory    时间: 2014-4-4 15:15:58

jissie丢 发表于 2014-4-4 14:50
还是有问题,去掉  autoCheckParent="true"
我勾选子类父类不一起 绑定了。
我要勾选子类就勾选父类的 ...

你要自动选中父节点,就设置autoCheckParent="true" 啊
作者: jissie丢    时间: 2014-4-4 16:04:05

factory 发表于 2014-4-4 15:15
你要自动选中父节点,就设置autoCheckParent="true" 啊

加上 autoCheckParent="true" 后
function setValue() {
            var obj = mini.get("select1");
            obj.setValue("base,ajax");
}
默认绑定值会勾选base下所有的子类。你试一下
作者: factory    时间: 2014-4-4 16:21:44

jissie丢 发表于 2014-4-4 16:04
加上 autoCheckParent="true" 后
function setValue() {
            var obj = mini.get("select1");

是这样的, 目前的checkRecursive和autoCheckParent是没法共存的
作者: jissie丢    时间: 2014-4-4 16:36:25

factory 发表于 2014-4-4 16:21
是这样的, 目前的checkRecursive和autoCheckParent是没法共存的

好吧,谢谢你




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2