从 ajax 调用中获取视图后如何设置活动选项卡?
How to set active tab after fetching the view from an ajax call?
我试图在从 ajax 调用中获取视图后为 bootstrap 3
选项卡设置 active tab
,但它不起作用。
视图是这样的:
<div class="portlet light ">
<div class="portlet-title tabbable-line">
<div class="caption">
<i class="icon-globe font-dark hide"></i>
<span class="caption-subject font-dark bold uppercase">TODAY</span>
</div>
<ul id="tab" class="nav nav-tabs">
<li class="active">
<a href="#tab_1_1" class="active" data-toggle="tab"> Collections </a>
</li>
<li>
<a href="#tab_1_2" data-toggle="tab"> Activities </a>
</li>
</ul>
</div>
<div class="portlet-body">
<!--BEGIN TABS-->
<div class="tab-content">
<div class="tab-pane active" id="tab_1_1">
这是脚本:
<script type="text/javascript">
function load_page()
{
$.ajax(
{
url: 'notification_table/',
type: 'GET',
dataType: 'html',
}).done(
function(data)
{
$('#home_view').html(data);
}
);
$('.nav-tabs a[href="#tab_1_2"]').tab('show');
}
window.onload = function ()
{
load_page();
setInterval(function () {
load_page(); }, 5000);
}
</script>
如您所见,我尝试了 $('.nav-tabs a[href="#tab_1_2"]').tab('show');
,也尝试了 $('#tab a[href="#tab_1_2"]').tab('show');
,但两者均无效。
我做错了什么?
我想你可以找"jQuery doesn't work after the content is loaded via AJAX"。
jQuery doesn't work after content is loaded via AJAX
我之前修复了我的代码,但我忘了我做了什么。
尝试只在 li
中使用 class="active"
而不是在 anchor tag
中使用,几乎一切都正确。
<li class="active">
<a href="#tab_1_1" data-toggle="tab"> Collections </a>
</li>
我试图在从 ajax 调用中获取视图后为 bootstrap 3
选项卡设置 active tab
,但它不起作用。
视图是这样的:
<div class="portlet light ">
<div class="portlet-title tabbable-line">
<div class="caption">
<i class="icon-globe font-dark hide"></i>
<span class="caption-subject font-dark bold uppercase">TODAY</span>
</div>
<ul id="tab" class="nav nav-tabs">
<li class="active">
<a href="#tab_1_1" class="active" data-toggle="tab"> Collections </a>
</li>
<li>
<a href="#tab_1_2" data-toggle="tab"> Activities </a>
</li>
</ul>
</div>
<div class="portlet-body">
<!--BEGIN TABS-->
<div class="tab-content">
<div class="tab-pane active" id="tab_1_1">
这是脚本:
<script type="text/javascript">
function load_page()
{
$.ajax(
{
url: 'notification_table/',
type: 'GET',
dataType: 'html',
}).done(
function(data)
{
$('#home_view').html(data);
}
);
$('.nav-tabs a[href="#tab_1_2"]').tab('show');
}
window.onload = function ()
{
load_page();
setInterval(function () {
load_page(); }, 5000);
}
</script>
如您所见,我尝试了 $('.nav-tabs a[href="#tab_1_2"]').tab('show');
,也尝试了 $('#tab a[href="#tab_1_2"]').tab('show');
,但两者均无效。
我做错了什么?
我想你可以找"jQuery doesn't work after the content is loaded via AJAX"。 jQuery doesn't work after content is loaded via AJAX
我之前修复了我的代码,但我忘了我做了什么。
尝试只在 li
中使用 class="active"
而不是在 anchor tag
中使用,几乎一切都正确。
<li class="active">
<a href="#tab_1_1" data-toggle="tab"> Collections </a>
</li>