我正在使用bootstrap nav-tabs进行“登录”和“注册”。
<div class="panel-heading">
<ul id="myTab" class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#tab1success" data-toggle="tab">Login</a></li>
<li><a data-toggle="tab" href="#tab2success" data-toggle="tab">Register</a></li>
</ul>
</div>
使用javascript记住用户通过本地存储使用的最后一个标签。我这样做的原因是因为当用户注册并输入无效数据(提交的表单)时,它会重新加载页面并返回“登录”选项卡。
我可以让网页始终记住最后一个标签:
$(document).ready(function (){
$('a[data-toggle="tab"]').on('show.bs.tab', function (e){
localStorage.setItem('activeTab', $(e.target).attr('href'));
});
var activeTab = localStorage.getItem('activeTab');
if (activeTab){
$('#myTab a[href="' + activeTab + '"]').tab('show');
}
});
但我只想在提交表单时触发代码(而不是所有时间)。这是我目前正在使用的代码:
<script type="text/javascript">
$("#btn100").onclick(function ()
{
$('a[data-toggle="tab"]').on('show.bs.tab', function (e)
{
localStorage.setItem('activeTab', $(e.target).attr('href'));
});
var activeTab = localStorage.getItem('activeTab');
if (activeTab)
{
$('#myTab a[href="' + activeTab + '"]').tab('show');
}
alert("check if code executed");
});
</script>
我还尝试过:$("#fm100").submit(function ()
,$("form").submit(function ()
,并从提交按钮创建HTML onclick="rememberTab()"
功能。
我期待着你的帮助,谢谢!