Jquery - 错误:语法错误,无法识别的表达式:#

时间:2017-08-31 16:10:23

标签: javascript jquery

我在手风琴里面有一些看似不起作用的标签,控制台中的错误是:

  

错误:语法错误,无法识别的表达式:#

我已经用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。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

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

但您的链接只有# href

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

因此查询将为$('#'),这就是错误消息的原因:

如果你写:

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

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

它会正常工作。