标签: jstree

以编程方式将子节点添加到jstree

我正在尝试编写一些动态地将节点添加到jstree的代码.我已经按照http://www.jstree.com/documentation/crrm上的文档进行了操作,但无法得到一个简单的示例 - 正在添加节点child2,但它正被添加到节点的root中. id'而不是'child1.id'指定...任何提示将不胜感激.代码如下

<html>
<head>
<script type="text/javascript" src="http://static.jstree.com/v.1.0rc2/jquery.js"></script>
<script type="text/javascript" src="http://static.jstree.com/v.1.0rc2/jquery.jstree.js"></script>

<script type="text/javascript">
$(document).ready(function() {
    $(function () {
        $("#tree").jstree({ 
            "json_data" : {
                "data" : [
                    { 
                        "data" : "parent", 
                        "attr" : { "id" : "root.id" }, 
                        "children" : [ { "data" : "child1",
                                         "attr" : { "id" : "child1.id" },
                                         "children" : [ ] }
                                     ]
                    },
                ]
            },
            "plugins" : [ "themes", "json_data", "crrm" ]
        });
    });
    $("#add").click(function() {
        $("#tree").jstree("create", $("#child1.id"), "inside",  { "data" : "child2" …
Run Code Online (Sandbox Code Playgroud)

javascript jstree

13
推荐指数
1
解决办法
3万
查看次数

jstree复选框操作

我有一个jstree与每个节点的复选框.我想实现以下目标.让我知道api的哪种方法或部分可以帮助我们做到这一点.

  1. 选择父节点时,我不想检查任何子节点.目前所有孩子都被选中.
  2. 如果选中任何子节点,则检查其所有父节点.当前父节点被部分检查(方形).我想完全删除部分选择.那就是我想完全改变jstree复选框的行为.

我搜索了API文档,却一无所获.

html javascript css jquery jstree

13
推荐指数
2
解决办法
2万
查看次数

加载后检查jstree复选框

我正在使用jQuery jsTree插件复选框.好的,我已经找到了如何处理检查或取消选中复选框的事件.如果它有用我可以粘贴代码:

.bind("check_node.jstree", function(e, data)
        {

            if(data.rslt.obj !== undefined && data.rslt.obj.attr(\'id\') !== undefined)
            {

                jQuery.ajax({
                        async : false,
                        type: "POST",
                        dataType: "json",
                        url: "adsmanager/adsfields/ajaxappendcategory",
                        data:
                        {
                            "id" : data.rslt.obj.attr(\'id\'),
                            "itemId" : "' . Yii::app()->getRequest()->getParam('id') . '",
                        },
                        success: function(r)
                        {
                            if(r === undefined || r.status === undefined || !r.status)
                            {
                                data.rslt.obj.removeClass(\'jstree-checked\');

                                data.rslt.obj.addClass(\'jstree-unchecked\');

                            }
                            else
                            {
                                niceBox(\'ok\');
                            }
                        }
                    });

            }

            return true;
        })
Run Code Online (Sandbox Code Playgroud)

有了这一切都没关系,但知道我无法找到任何地方如何检查树加载的复选框,例如,如果我使用jsTree像我的新闻项目的类别选择器当我创建新的新闻项目一切正常,当我想要更新该项我需要jsTree与选定的类别,这是我无法找到如何选择加载jsTree节点的任何示例.

对这个问题有任何帮助吗?

jquery user-interface jquery-plugins jstree

12
推荐指数
3
解决办法
3万
查看次数

Jquery Jstree复选框事件捕获

我是jQuery和jstree的新手.我正在使用jstree并使用xml填充数据.但是想要捕获每个节点的事件,无论是否与它们的ID一起检查.我试着用jstree的插件API一样change_state(),check_node()或者select_node(),但它不工作.此外,我想将所有选定的节点数据放入一个数组中进行进一步处理.任何人都可以帮忙吗?

谢谢...

checkbox jquery click checked jstree

12
推荐指数
2
解决办法
2万
查看次数

jsTree:如何在jsTree中将所选节点的ID获取到根节点?

如何在jsTree中将所选节点的ID获取到根节点?

假设C是选定节点然后我如何获得C的所有父ID.

一个

    • C

      + C1

      + C2

以下代码将仅返回直接父ID:如果我选择了C,那么我只获得B.

 .bind("select_node.jstree", function (event, data) {  
    //`data.rslt.obj` is the jquery extended node that was clicked          
    alert("Selected node = "+ data.rslt.obj.attr("id"));
    alert("Parent of Selected node = "+ data.inst._get_parent(data.rslt.obj).attr("id"))
 });
Run Code Online (Sandbox Code Playgroud)

输出:

Selected node = C

Parent of Selected node = B

有没有办法获取所有父节点ID,即选择节点到根节点?

  • 如何在jsTree中获取所选节点的所有子节点?

任何有关此事的帮助或指导将不胜感激.

html javascript jquery jquery-ui jstree

12
推荐指数
2
解决办法
3万
查看次数

jsTree:如何从jstree获取所有节点?

如何让所有节点都出现在jsTree中?

我正在用xml构建jsTree

Root
     -----A
          -----A1
               -----A1.1
               -----A1.2
          -----A2
               -----`A2.1`
               -----A2.2

     -----B
          -----B1
          -----B2

     -----C
          -----C1
               -----C1.1
               -----C2.2
Run Code Online (Sandbox Code Playgroud)

我想要jsTree中存在的所有节点(ID)的数组如下

预期产出:[Root,A,A1,A1.1,A1.2,A2,A2.1,A2.2,B,B1,B2,C,C1,C1.1,C2.2]

javascript jquery jquery-plugins jquery-selectors jstree

12
推荐指数
3
解决办法
2万
查看次数

在jsTree上下文菜单中创建自定义项

我在asp.net mvc3中使用jsTree和contextmenu创建了一个树视图.

<div id="divtree">
<ul id="tree">
    <li><a href="#" class="usr">@Model.Name</a>
        @Html.Partial("Childrens", Model)
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

<script type="text/javascript">
$(function () {
    $("#divtree").jstree(
        {
            "plugins": ["themes", "html_data", "ui", "crrm", "contextmenu"]
        });
});
Run Code Online (Sandbox Code Playgroud)

它的工作正常.

图片

我想在上下文菜单中创建一个客户项目.例如,创建一个新的菜单项.的创建在上下文菜单中的新员工.并将员工插入DB.我使用jQuery POST函数来完成这项任务.但是如何处理中的click事件

上下文菜单项.

请帮忙

asp.net-mvc treeview jstree

12
推荐指数
1
解决办法
2万
查看次数

jsTree通过ajax加载孩子

下面发布的代码通过ajax请求加载我的树的根元素.我的树非常大,所以我无法一次加载所有项目所以我需要通过请求孩子为特定ID加载元素.

如何通过单击节点按ajax加载元素?

  $('#jstree_demo_div').jstree({
            "plugins" : ["wholerow", "checkbox"],
            'core' : {
                'data' : {
                    'url' : function(node) {
                        return "/" + site + "/places/api/tree/list/";
                    }
                },
            }

        });
Run Code Online (Sandbox Code Playgroud)

json样本的一部分

[
   {
      "text":"zachodniopomorskie",
      "state":"closed",
      "id":212353,
   },
Run Code Online (Sandbox Code Playgroud)

固定版本:

 $('#jstree_demo_div').jstree({
            "plugins" : ["wholerow", "checkbox"],
            'core' : {
                'data' : {
                    'url' : "/" + site + "/places/api/tree/list/",
                    'data' : function(node) {
                        return {
                            'id' : node.id
                        };
                    }
                },
            }
        })
Run Code Online (Sandbox Code Playgroud)

我的问题的解决方案是,如果我想通过ajax请求返回子项,我需要返回包含以下内容的json文件:

"children:" true
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery jstree

12
推荐指数
1
解决办法
1万
查看次数

取消选择所选的treenode JStree - jquery

情况

当我的页面加载并且我的树视图是可见的时,没有选择treenode.当我点击一个节点时,它被选中,这是默认行为.

如何在单击同一节点时取消选择节点?所以我想点击一个选定的节点取消选择它.我一直在搜索文档.但事件'select_node'将首先选择节点,然后才能检查它的selectstatus.

我知道有一种方法可以在单击按钮时取消选择带代码的节点,但这不是我想要的.我想单击已选择的节点.

有人能帮我吗?

链接)

文档事件JStree:http://www.jstree.com/api/#/? q = .jstree%20Event&f = enable_node.jstree

html jquery jstree

12
推荐指数
1
解决办法
1万
查看次数

如何获取jstree的row元素的click事件?

你能告诉我如何获得jstree的row元素的click事件吗?我在小提琴中制作了一个jstree的演示.它是在面板中制作的.你必须按"打开面板"按钮检查面板

我想点击jstree元素的事件来点击它的id?为了准备树,我必须多次按"添加测试用例按钮",然后按"打开面板"按钮.

这是我的小提琴 http://jsfiddle.net/ZLe2R/6/

function addMenuItemsOfTestSuit(id){

 var menuid = "menu_" + id;
       var ref = $('#tree').jstree(true);
        alert('thank')
    ref.create_node("#", {"id" : menuid, "text" : id});

        ref.deselect_all();

}
Run Code Online (Sandbox Code Playgroud)

javascript jquery jstree

12
推荐指数
2
解决办法
3万
查看次数