jQuery语法错误:#​​/

Wei*_*Hao 24 jquery twitter-bootstrap angularjs

我目前正在为我的Web应用程序使用jQuery,Twitter Bootstrap和AngularJS.我一直在尝试做路由,但Syntax error, unrecognized expression: #/time只要我尝试点击时间标签,jQuery就会一直给我,反之亦然.我不知道是哪个导致了这个错误,除了它是由#符号引起的.我广泛搜索但无济于事.这是我的代码:

<ul class="nav nav-tabs">
  <li class="active">
    <a href="#/main" data-toggle="tab" id="main-tab">Main</a>
  </li>
  <li>
    <a href="#/time" data-toggle="tab" id="time-tab">Time Reports</a>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我需要保持斜线,因为我用它为我的AngularJS的路由(即index.html#/mainindex.html#/time将加载在我的div一个不同的内容).什么可能导致此错误?

PSL*_*PSL 28

我想在href指定id目标时会有额外的斜线.删除它们,它应该工作正常.

<ul class="nav nav-tabs">
  <li class="active">
    <a href="#main" data-toggle="tab" id="main-tab">Main</a>
  </li>
  <li>
    <a href="#time" data-toggle="tab" id="time-tab">Time Reports</a>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

Bootstrap将href值视为id,以便将目标元素显示为选项卡内容.所以在这种情况下,它会寻找id = #/time不存在的东西.

如果你想保持href完整,你可以使用data-target属性

<a href="#/main" data-toggle="tab" data-target="#main" id="main-tab">Main</a>
Run Code Online (Sandbox Code Playgroud)

演示