这是我在这里的第一个问题,但我一直潜伏着。我希望我能说清楚。
碰巧我正在使用Bootstrap 3 +标签开发 CI应用程序,在我进行“表单提交”后,重新加载将我带到第一个标签,而不是最后一个标签标签
<ul class="nav nav-tabs" id="tabs">
<li class="active"><a href="#accion" data-toggle="tab">Acción</a></li>
<li><a href="#observaciones" data-toggle="tab">Observaciones</a></li>
<li><a href="#adjuntos" data-toggle="tab">Adjuntos</a></li>
</ul>
这就是我的标签的构建方式,控制器有一个像这样的重定向():
redirect(base_url().'/responderconsulta/index/'.$consulta_id.'#observaciones');
我还没有办法纠正这个问题。我希望我能得到一些帮助。
提前致谢。
答案 0 :(得分:1)
在你的js文件中:
var hash = window.location.hash;
$('#tabs > li').removeClass("active");
$('#tabs').find('a[href='+hash+']').parent().addClass("active");
目标是检测网址末尾的锚点并设置活动好标签
编辑:这是另一种选择:
var hash = window.location.hash;
$('#tabs').find('a[href='+hash+']').click();
答案 1 :(得分:1)
感谢@Paul Zepernick,他在评论中提到了post,这段代码让这个简单轻松。
$(document).ready(function() {
if(location.hash) {
$('a[href=' + location.hash + ']').tab('show');
}
$(document.body).on("click", "a[data-toggle]", function(event) {
location.hash = this.getAttribute("href");
});
});
$(window).on('popstate', function() {
var anchor = location.hash || $("a[data-toggle=tab]").first().attr("href");
$('a[href=' + anchor + ']').tab('show');
});
感谢所有人的帮助,我真的很感激!