2017-08-31 129 views
0

我有一个手风琴里面的一些标签,似乎并不合作,并在控制台中的错误是:jQuery的 - 错误:语法错误,无法识别的表达式:#

Error: Syntax error, unrecognized expression: #

我GOOGLE了错误并且似乎无法处理可能导致它的原因。从查看代码看起来一切都很正常,因为大部分情况都很简单。

的HTML是:

<div class="access-privilages"> 
       <!-- Accordions --> 
       <div class="panel-group" id="accordion"> 
        <div class="panel panel-default"> 
         <div class="panel-heading"> 
          <h4 class="panel-title"> 
           <a data-toggle="collapse" data-parent="#accordion" href="#collapse_hradmin">First</a> 
          </h4> 
         </div> 
         <div id="collapse_hradmin" class="panel-collapse collapse in"> 
          <div class="panel-body"> 

           <!-- Tabs --> 
           <ul class="nav nav-tabs"> 
            <li class="active"> 
             <a id="personal" href="#">Personal Information</a> 
            </li> 
            <li><a id="financial" href="#">Financial Information</a></li> 

           </ul> 
           <div class="tabContent" id="tabContent_personal"> 


           </div> 
           <div class="tabContent" id="tabContent_financial"> 

           </div> 

          </div> 
         </div> 
        </div> 
        <div class="panel panel-default"> 
         <div class="panel-heading"> 
          <h4 class="panel-title"> 
           <a data-toggle="collapse" data-parent="#accordion" href="#collapse_rmgadmin" class="collapsed">Second</a> 
          </h4> 
         </div> 
         <div id="collapse_rmgadmin" class="panel-collapse collapse"> 
          <div class="panel-body"> 
           <p>Second Section</p> 
          </div> 
         </div> 
        </div> 
       </div> 

      </div> 

而且JS很简单:

$(".nav a").click(function(e) { 
       $(this).tab("show"); 

       var tabContent = "#tabContent_" + this.id; 

       $("#tabContent_personal").hide(); 
       $("#tabContent_financial").hide(); 
       $(tabContent).show(); 
      }); 

这里有一个Fiddle。有任何想法吗?

+0

.tab()<---这个函数的一部分是什么库?这不是一个标准的jQuery函数 - 所以我怀疑你的问题在于任何与tab()相关的库 - 并且它正在用作你的hrefs的哈希值。 尝试在你的锚中使用“javascript:void(0)”而不是#。 – Korgrue

+1

你错过了那里的jQuery lib ...没有更多 – Dekel

+0

我认为bootstrap? –

回答

2

Bootstrap使用href的内容来查询应该显示的容器。

但你的链接只有#href

<a id="personal" href="#"> 

所以查询将$('#'),那就是对错误信息的原因:如果你写

<a id="personal" href="#tabContent_personal"> 

and

<a id="financial" href="#tabContent_financial"> 

它会正常工作。

相关问题