JQuery onchange in tabs event

JQuery onchange in tabs event

本文关键字:event tabs in onchange JQuery      更新时间:2023-09-26

有人知道当我在JQuery中从一个选项卡更改为另一个选项卡时如何触发事件吗?

例如:

<li><a href="#tab-1" onclick="submitForm();" onchange="myJSHere();">Tab</a></li>

jQuery ui ??

$("#tabs").tabs({
    select: function(event, ui) {
        alert("PRESSED TAB!");
    }
});
$(function() {
    $( "#tabs" ).tabs({ activate: function(event ,ui){
                    //console.log(event);
                    //alert(  ui.newTab.index());
        alert( ui.newTab.attr('li',"innerHTML")[0].getElementsByTagName("a")[0].innerHTML);
        //alert( this.text);
                } });

为我工作

HTML:

<div id="tabs">
    <ul class="nav nav-tabs">
        <li class="active"><a data-toggle="tab" href="#home">Home</a></li>
        <li><a data-toggle="tab" href="#menu1">Menu 1</a></li>
        <li><a data-toggle="tab" href="#menu2">Menu 2</a></li>
    </ul>
    <div class="tab-content">
        <div id="home" class="tab-pane fade in active">
            <h3>HOME</h3>
            <p>Some content.</p>
        </div>
        <div id="menu1" class="tab-pane fade">
            <h3>Menu 1</h3>
            <p>Some content in menu 1.</p>
        </div>
        <div id="menu2" class="tab-pane fade">
            <h3>Menu 2</h3>
            <p>Some content in menu 2.</p>
        </div>
    </div>
</div>
脚本

<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
<script>
    $("#tabs").tabs({
        activate: function(event, ui) {
            alert("PRESSED TAB!");
        }
    });
</script>

我的解决方案是单击事件侦听器

解决方案:

$('.nav-tabs li').click(function () { 
  alert('Tab Clicked');
});

完整的HTML解决方案。

<div id="tabs">
        <ul class="nav nav-tabs">
            <li class="active"><a data-toggle="tab" href="#home">Home</a></li>
            <li><a data-toggle="tab" href="#menu1">Menu 1</a></li>
            <li><a data-toggle="tab" href="#menu2">Menu 2</a></li>
        </ul>
    <div class="tab-content">
        <div id="home" class="tab-pane fade in active">
            <h3>HOME</h3>
            <p>Some content.</p>
        </div>
        <div id="menu1" class="tab-pane fade">
            <h3>Menu 1</h3>
            <p>Some content in menu 1.</p>
        </div>
        <div id="menu2" class="tab-pane fade">
            <h3>Menu 2</h3>
            <p>Some content in menu 2.</p>
        </div>
    </div>
</div>
脚本

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$('.nav-tabs li').click(function () { 
  alert('Tab Clicked');
});

如果有人遇到jquery手风琴在选项卡内不能正确显示的问题(特别是在操作手风琴的内容之后)。下面的狙击手做到了这一点。注释行只是为了防止您希望完全重新创建手风琴。

        $("#tabs").tabs({
            activate: function(event, ui) {
                // $( ".accordion" ).accordion('destroy').accordion().accordion( "refresh" );
                $( ".accordion" ).accordion( "refresh" );
            }
        });