7

我正在使用 jstree 插件来构建我的树。我的网页中有一个搜索框,我需要用户能够在其中搜索 jstree 节点。

<fieldset id="search">

    <input type="text" name="search_field" id="search_field" value="" />
    <button id="search_tree">Search</button>

  </fieldset>

单击搜索时,jstree 节点应展开,如果找到,则应突出显示节点。如果未找到,则应向用户显示错误,如“未找到”。我的代码展开下面的所有节点。有没有一种简单的方法可以搜索 jstree 中的所有节点?

<script type="text/javascript"> 
     $(document).ready(function(){

         $("#search_tree").click(function () {  
    var value=document.getElementById("search_field").value; 
         $("#tree").jstree("search",value);  

     });  

     $("#tree").jstree({  



         "xml_data" : {  

             "ajax" : {  

                 "url" : "jstree.xml" 

             },  

             "xsl" : "nest"


         },  
         "themes" : {  

             "theme" : "classic",  

            "dots" : true,  

             "icons" : true 

         },  

             "search" : {  

                 "case_insensitive" : true,  

                 "ajax" : {  

                     "url" : "jstree.xml" 

                 }  

             },  
              "plugins" : ["themes", "xml_data", "ui","types", "search"] 

         });  



 }); 

</script>

我收到此错误:

Instances[...] 为 null 或不是对象。这是一个jstree错误。有任何想法吗?

4

1 回答 1

6

I have added this piece of code to my function:

"search" : {  

                 "case_insensitive" : true,  

                 "ajax" : {  

                     "url" : "jstree.xml" 

                 }  

             },  
              "plugins" : ["themes", "xml_data", "ui","types", "search"] 

and

created this function and assoicated with my click button:

function myFunction()
{
$(document).ready(function(){

var value=document.getElementById("search_field").value; 

    $("#search_tree").click(function () { 

        $("#tree").jstree("search",value) 
 }); 

 }); 
}
于 2013-02-19T17:04:25.423 回答