【发布时间】:2014-05-22 18:12:23
【问题描述】:
我有以下 asp.net aspx 代码
<asp:LinkButton CssClass="form-search" ID="LinkButtonSearch" runat="server">Search</asp:LinkButton>
<br />
<ul class="nav nav-tabs" id="myTab">
<li class="active"><a href="#home">Home</a></li>
<li><a href="#profile">Profile</a></li>
<li><a href="#messages">Messages</a></li>
<li><a href="#settings">Settings</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="home">home</div>
<div class="tab-pane" id="profile">profile</div>
<div class="tab-pane" id="messages">messages</div>
<div class="tab-pane" id="settings">settings</div>
</div>
当我单击链接按钮时,此脚本代码在回发事件后保持活动选项卡
<script>
$(document).ready( function(){
$('#myTab a').click(function (e) {
e.preventDefault()
$(this).tab('show')
});
// store the currently selected tab in the hash value
$("ul.nav-tabs > li > a").on("shown.bs.tab", function (e) {
var id = $(e.target).attr("href").substr(1);
window.location.hash = id;
});
// on load of the page: switch to the currently selected tab
var hash = window.location.hash;
$('#myTab a[href="' + hash + '"]').tab('show');
});
</script>
注意:此代码仅在我重新加载当前页面时才能正常工作。它保持当前选项卡焦点。但是当你点击链接按钮时,它会带我回到默认选项卡。
如何使这段代码也适用于任何控件的回发事件。
注意:我从堆栈帖子中获取了这个示例:How do I keep the current tab active with twitter bootstrap after a page reload?。此解决方案已发布者:@koppor。
任何帮助
【问题讨论】:
-
@Alicia 谢谢你的链接
-
请在 Fiddle (html, javasript) 中更新您的代码
-
嗨@Djama,我认为您在尝试显示最后一个选项卡时遇到了问题。将您的代码放入
$(document).ready()函数中。这是我之前回答 stackoverflow.com/questions/21136981/… 的第三步。 -
@aledpardo 编辑了脚本,但我仍然遇到同样的问题,回发后没有保留当前选项卡。你说我在尝试显示最后一个标签时遇到问题,你能更明确一点
标签: javascript jquery asp.net twitter-bootstrap c#-4.0