I want my tabs to be correctly correlated when I click either the Join button or the sign in button. Currently, when the join button is clicked, the li tag with id="signin-tab" always has the class="active" and also id="signin-pane" has an active class as well. I thought my function joinIsSelected would handle this but it is not doing so. The tab is being active on the Sign in tab even when I click on the Join button. It is only supposed to active when I either click on the Sign in tab or Sign in button
Here is a jsfiddle:
HTML:
<nav class="navbar nav-default navbar-fixed-top">
<div class="container">
<ul class="navbar-left">
<li><a>LOGO</a></li>
</ul>
<ul class="logged-out-nav nav navbar-nav navbar-right">
<li><a id="join-btn" data-toggle="modal" data-target="#modal" class="btn">Join Spark</a></li>
<li><a id="signin-btn" data-toggle="modal" data-target="#modal" class="btn">Sign in</a></li>
</ul>
</div>
</nav>
<!-- Modal -->
<div class="modal fade" id="modal" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<!-- tabs -->
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" id="signin-tab"><a href="#signin-pane" role="tab" data-toggle="tab">Sign in</a></li>
<li role="presentation" id="new-account-tab"><a href="#signup-pane" role="tab" data-toggle="tab">New Account</a></li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
<div role="tabpanel" class="tab-pane fade in" id="signup-pane">
<form class="signup-form" method="post">
{% csrf_token %}
<input id="signup-firstname" type="text" placeholder="First Name">
<input id="signup-lastname" type="text" placeholder="Last Name">
<input id="signup-email" type="email" placeholder="Email">
<input id="signup-password" placeholder="Password">
<input id="signup-confirm-password" placeholder="Confirm Password">
</form>
</div>
<div role="tabpanel" class="tab-pane fade in" id="signin-pane">
<form class="signin-form" method="post">
{% csrf_token %}
<input id="signin-email" type="email" placeholder="Email">
<input id="signin-password" type="password" placeholder="Password">
</form>
</div>
<div role="tabpanel" class="tab-pane fade in" id="reset-password-pane">
<input id="forgot-email" type="email" placeholder="Email">
</div>
</div>
</div>
</div>
</div>
</div>
JS:
var join_btn = document.getElementById("join-btn"),
signin_btn = document.getElementById("signin-btn"),
signin_tab = document.getElementById("signin-tab"),
new_account_tab = document.getElementById("new-account-tab"),
signin_pane = document.getElementById("signin-pane"),
signup_pane = document.getElementById("signup-pane"),
reset_password_pane = document.getElementById("reset-password-pane");
join_btn.addEventListener("click", joinSelected());
signin_btn.addEventListener("click", signInSelected());
function joinSelected() {
$(new_account_tab).addClass("active");
$(signup_pane).addClass("active");
$(signin_pane).removeClass("active");
$(signin_tab).removeClass("active");
$(reset_password_pane).removeClass("active");
}
function signInSelected() {
$(new_account_tab).removeClass("active");
$(signup_pane).removeClass("active");
$(signin_pane).addClass("active");
$(signin_tab).addClass("active");
$(reset_password_pane).removeClass("active");
}