未捕获错误:语法错误,无法识别的表达式:?tab = month

时间:2012-05-20 03:15:22

标签: jquery twitter-bootstrap selector

我在我的页面上放置了引导标签,并试图从js动态激活一个。这是一个例子:

<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>

但我总是得到:

  

未捕获错误:语法错误,无法识别的表达式; ?标签=月

来自jQuery(v1.7.1)的

修改 我创建了一个fiddle

2 个答案:

答案 0 :(得分:2)

show()尝试激活选项卡及其内容,但是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 :(得分:0)

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

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

但我在jquery ui标签中找不到任何选项,例如.Tab('show')