jQuery MiniUI

标题: miniui下拉树mini-treeselect问题 [打印本页]

作者: Goldfish    时间: 2017-4-5 16:40:01     标题: miniui下拉树mini-treeselect问题

在使用mini-treeselect控件时,对控件设置了valueFromSelect="true" allowInput="true"属性,并做了只能选择叶子节点的控制,但当输入父节点的ID进行模糊查询后并失去焦点时,treeselect的value和text均被赋值,进而保存到了后台。
我想在任何情况下父节点都不能被选中,但是模糊匹配功能要有,请问有什么好的解决方法么?


作者: Goldfish    时间: 2017-4-5 16:42:41

代码补充:
<input id="XXX" name="XXX" class="mini-treeselect" data="" multiSelect="false" virtualScroll="true"
                                                textField="text" valueField="id" parentField="pid" value="" valueFromSelect="true" allowInput="true"
                                                showRadioButton="false" showFolderCheckBox="true"  style="width:120px" panelHeight='auto' panelWidth='auto' pinyinField="id" checkRecursive="true"  popupWidth='360px'
                                                onValueChanged="XXX()" onbeforenodeselect="beforenodeselect" />

function beforenodeselect(e) {
    //禁止选中父节点
    if (e.isLeaf == false) e.cancel = true;
}
作者: felt    时间: 2017-4-5 18:44:52

Goldfish 发表于 2017-4-5 16:42
代码补充:

beforenodeselect只能禁止鼠标点击的选择,并不能阻止你输入的内容。你这可以加一个验证,如果是父节点,就提示一下

作者: Goldfish    时间: 2017-4-6 09:21:15

felt 发表于 2017-4-5 18:44
beforenodeselect只能禁止鼠标点击的选择,并不能阻止你输入的内容。你这可以加一个验证,如果是父节点, ...

我是想这么做,但是找不到类似于isLeaf的属性
function leafOnly(e) {
    if (e.source.getSelectedNode()._level == 0){
            e.source.setValue("");
            e.source.setText("");
    }
}
作者: Goldfish    时间: 2017-4-6 09:25:00

Goldfish 发表于 2017-4-6 09:21
我是想这么做,但是找不到类似于isLeaf的属性
function leafOnly(e) {
    if (e.source.getSelectedNode ...

我现在这个只能判断根节点,层级结构发生变化就无效了。其次,若根节点同时也是子节点,isLeaf是可以将其当做子节点处理,我现在的这个不可以。
请问有什么好的方法么?
作者: dforce    时间: 2017-4-6 11:53:55

Goldfish 发表于 2017-4-6 09:25
我现在这个只能判断根节点,层级结构发生变化就无效了。其次,若根节点同时也是子节点,isLeaf是可以将其 ...

var selected=e.sender.tree.getSelected()
e.sender.tree.isLeaf(selected)
作者: Goldfish    时间: 2017-4-6 14:23:35

dforce 发表于 2017-4-6 11:53
var selected=e.sender.tree.getSelected()
e.sender.tree.isLeaf(selected)

非常感谢!




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