2012-05-20 209 views
1

我在我的页面上放置了bootstrap选项卡,并试图从js动态地激活一个选项卡。这里有一个例子:未捕获的错误:语法错误,无法识别的表达式:?tab = month

<ul class="nav nav-tabs"> 
<li class="active"><a href="?tab=day">Hot</a></li> 
<li><a href="?tab=week">Week</a></li> 
<li><a href="?tab=month">Month</a></li> 
</ul> 

<script> 
    $(function() { 
     $('.nav-tabs a[href="\\?tab\\=month"]').tab('show'); 
    }); 
</script> 

但我总是得到:

Uncaught Error: Syntax error, unrecognized expression; ?tab=month

从jQuery的(V1.7.1)。

编辑: 我创建了一个fiddle

回答

2

展现在jQuery UI的选项卡的任何选项()尝试主动两种标签及其内容,但href“?tab = month”的值对于jQuery选择内容无效。

我的解决方法是:

<ul class="nav nav-tabs"> 
<li class="active"><a href="?tab=day" data-target="#">Hot</a></li> 
<li><a href="?tab=week" data-target="#">Week</a></li> 
<li><a href="?tab=month" data-target="#">Month</a></li> 
</ul> 

<script> 
$(function() { 
    $('.nav-tabs a[href="?tab=month"]').tab('show'); 
}); 
+1

我遇到了类似的问题,因为我在我的选项卡上没有'data-target =“#”',因为我正在使用替代方法('AngularJS')来呈现视图内容。这有助于突出这个问题,谢谢。 – atconway

0

您可以使用选择包含选择,

$('.nav-tabs a[href*="month"]') 

但我无法找到像.Tab('show')

+0

我得到了同样的错误 “未捕获错误:语法错误,无法识别的表达:?标签=月”,奇怪的。 – ting

相关问题