Does anyone know how to fire an event when I change from one tab to the other in JQuery?
for example:
<li><a href="#tab-1" onclick="submitForm();" onchange="myJSHere();">Tab</a></li>
Does anyone know how to fire an event when I change from one tab to the other in JQuery?
for example:
<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);
} });
Work for me
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
<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>
My Solution is Click Event Listener.
Solution:
$('.nav-tabs li').click(function () {
alert('Tab Clicked');
});
Complete Solution with HTML.
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
<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');
});
In case anyone encounter an issue with jquery accordion inside tabs not displaying properly (especially after manipulating the contents of the accordion. The below snipper does the trick. The commented line is just in case you wish to re-create the accordion entirely.
$("#tabs").tabs({
activate: function(event, ui) {
// $( ".accordion" ).accordion('destroy').accordion().accordion( "refresh" );
$( ".accordion" ).accordion( "refresh" );
}
});