Jquery 选择节点上的jsTree ajax加载指示器(MVC 4.0)

Jquery 选择节点上的jsTree ajax加载指示器(MVC 4.0),jquery,asp.net-mvc-4,jstree,Jquery,Asp.net Mvc 4,Jstree,我的页面上有一个JStree(事实上,有3棵树。不要说得太快…)。在这棵树上,我通过Ajax动态加载节点,这里没有问题,内置指示器工作正常。 现在,当选择一个节点时,我通过对同一控制器和部分视图中的另一个方法的Ajax调用加载一个项目列表。这也很好用 问题是,我还没有找到一个合适的方法告诉第二个Ajax调用使用不同的指示器。到目前为止,我得到的是 $(document).ready(function() { $('.loadingIndicator').hide();

我的页面上有一个JStree(事实上,有3棵树。不要说得太快…)。在这棵树上,我通过Ajax动态加载节点,这里没有问题,内置指示器工作正常。 现在,当选择一个节点时,我通过对同一控制器和部分视图中的另一个方法的Ajax调用加载一个项目列表。这也很好用

问题是,我还没有找到一个合适的方法告诉第二个Ajax调用使用不同的指示器。到目前为止,我得到的是

    $(document).ready(function() {
       $('.loadingIndicator').hide();           
    });

    $(document).ajaxSend(function() {
        $('.loadingIndicator').show();
    });

    $(document).ajaxComplete(function() {
        $('.loadingIndicator').hide();
    });
但是很明显,当加载树的分支时,这个指示器也会显示加载,这很混乱

谢谢你的帮助,
伯纳德。

为了回答我自己的问题,我最后做了一件非常简单的事情,我应该在问之前考虑一下。我想我还是被javascript/jquery吓坏了

无论如何,我创建了一个全局变量用作标志,在正确的ajax调用之前将其设置为1,并将以前的ajaxSend函数转换为如下所示:

$(document).ajaxSend(function () {
if (itemLoad === 1) {               
    $('#ListOfBooksHere').showLoading();
    itemLoad = 0;
}           
}))

工作完美