Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在JQuery中保持倒数第二个li的活动状态_Javascript_Jquery_Jquery Ui - Fatal编程技术网

Javascript 如何在JQuery中保持倒数第二个li的活动状态

Javascript 如何在JQuery中保持倒数第二个li的活动状态,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我的MVC应用程序中有简单的选项卡控件 看法 选项卡内容 $(函数(){ var计数=2; $('#addspan')。单击(函数(){ $('li:last').prev()。在('')之后; $('li:last').removeClass(“活动”); $('li:last').prev().addClass(“活动”); }); }); 在单击“addspan”或(+)li之后,我在最后一个li之前动态添加了一个li,因此我的查询是在单击(+)li之后,将其添加到该li的ad

我的MVC应用程序中有简单的选项卡控件

看法


选项卡内容 $(函数(){ var计数=2; $('#addspan')。单击(函数(){ $('li:last').prev()。在('
  • ')之后; $('li:last').removeClass(“活动”); $('li:last').prev().addClass(“活动”); }); });
    在单击“addspan”或(+)li之后,我在最后一个li之前动态添加了一个li,因此我的查询是在单击(+)li之后,将其添加到该li的add.active类中,但我想保持新添加的li处于活动状态,我该怎么办

    在javascript中添加以下代码之后,我观察到了另一个场景

    <script type="text/javascript">
            $(function () {
                var count = 2;
                $('#addspan').click(function () {
                    $('li:last').prev().after('<li id="li' + count + '"><a href="/#tab' + count + '"data-toggle="tab">New Stream</a></li>');
    
                     //to keep newly added li active
    
                     $('li:last').removeClass("active");
                    $('li:last').prev().addClass("active");
    
                });
    
            });
        </script>
    
    
    $(函数(){
    var计数=2;
    $('#addspan')。单击(函数(){
    $('li:last').prev()。在('
  • ')之后; //使新添加的li保持活动状态 $('li:last').removeClass(“活动”); $('li:last').prev().addClass(“活动”); }); });
    它工作得很好,它将“.active”类添加到了倒数第二个li,但在完成javascript函数后,它再次将“.active”类添加到倒数第二个li,我不知道为什么会发生这种情况


    请告诉我如何将“.active”类设置为新添加的LI?

    您只需执行以下操作:

    var $li = $('<li id="li' + count + '"><a href="/#tab' + count + '"data-toggle="tab">New Stream</a></li>');
    
    // Remove the previous active li class
    $('li.active').removeClass("active");
    
    // Add active class to new li
    $li.addClass("active");
    
    var$li=$('
  • ); //删除以前的活动li类 $('li.active').removeClass(“active”); //将活动类添加到新li $li.addClass(“活动”);
    您可以试试这个:

    var count = 2;
    $('#addspan').click(function (e) {
       e.preventDefault();
       $('li').removeClass("active");
       $('li:last').prev().after('<li id="li' + count + '"><a href="/#tab' + count + '"data-toggle="tab">New Stream</a></li>');
       $('li:last').prev().addClass("active");
    });
    
    var count = 2;
    $('#addspan').click(function (e) {
       e.preventDefault();
       $('li').removeClass("active");
       $('li:last').prev().after('<li class="active" id="li' + count + '"><a href="/#tab' + count + '"data-toggle="tab">New Stream</a></li>');
    });
    

    您使用的是jquery UI选项卡还是其他什么?你能做个提琴吗?这对我来说不起作用,意思是当控件在点击事件中时,它在控件从点击功能重新设置后工作。活动类到最后一个li。
    \u请告诉我如何将“.active”类设置为新添加的li?
    id不这样做吗?你的代码工作正常,但在点击事件失去控制后,我认为它再次将.active类设置为另一个javascript函数的最后一个li,那么有什么方法可以阻止它呢?
    var count = 2;
    $('#addspan').click(function (e) {
       e.preventDefault();
       $('li').removeClass("active");
       $('li:last').prev().after('<li class="active" id="li' + count + '"><a href="/#tab' + count + '"data-toggle="tab">New Stream</a></li>');
    });