接收来自jstreet搜索的多个警报消息

Receiving multiple alert messages from jsTree search

本文关键字:消息 搜索 jstreet      更新时间:2023-09-26

我已经构建了下面的函数来在jtree中搜索文本。

如果找到搜索文本,则突出显示该节点。如果没有找到,用提示用户"没有匹配搜索字符串的节点,请重试"字符串。

当我输入一个不在jtree中的搜索文本时,就会收到警告。我再次搜索节点的有效文本,但我仍然在浏览器窗口上得到警告。

任何想法?

<script type="text/javascript"> 
function myFunction()
{
    $(document).ready(function(){
        var value=document.getElementById("search_field").value;    
        var searchResult;
        var AlertsOn = false
        $("#search_tree").click(function () { 
            searchResult=$("#tree").jstree("search",value);
                if ($(searchResult).find('.jstree-search').length == 0) 
                {
                    AlertsOn = true;
                }
                else 
                {
                    AlertsOn = false;
                }
                if(AlertsOn == true){
                    alert($(searchResult).find('.jstree-search').length);
                }       
        });
        document.getElementById("search_field").value='';
    }); 
}
</script>
html:

<fieldset id="search">
    <input type="text" name="search_field" id="search_field" value="" />
    <button id="search_tree" onclick="myFunction()"> Search</button>
  </fieldset>

我可以在jquery中调用这个重载页面来重新初始化警告框:

location.reload();