未捕获的SyntaxError:意外的令牌},没有可见的错误


Uncaught SyntaxError: Unexpected token }, no visible error?

当我尝试运行web应用程序的某些功能时,在index.php(第30行)上收到错误"Uncaught SyntaxError:Unexpected token}"(而其他功能似乎工作正常)。

我稍微缩小了问题的范围。错误似乎发生在"<?php"打开标记处(我发现了这一点,因为在该标记之后添加一行不会改变给出错误的行,而是在标记之前增加一行,并为第31行给出错误)。我已经把代码放在记事本++中检查隐藏的字符,我找不到任何不合适的地方。Dreamweaver没有语法错误。。。

我还查看了我的AJAX JS函数(它们在一个单独的文件中)。没有语法错误,也没有错位的字符。

问:有人能看到或解释是什么导致了这个错误吗?

我将把"line:30"周围的代码放在错误应该出现的地方。完整的代码在github上(放大后在这里发布所有代码):

https://github.com/bcdawber/URL-Vault-Web-Application

代码:

    </head>
    <body onLoad="showUrl('All URLs')">
    //console suggests error is somewhere here?
    <?php
        session_start();
        if(isset($_SESSION['userid'])) {
            echo '<div class="container">';
                echo '<div class="panel" id="backgroundPanel">';
                    echo '<div class="row">';
                        echo '<div class="large-12 columns">';
                            echo '<div class="panel">';
                                echo '<p><h2 id="title">URL VAULT</h2>';
                                echo '<h4 id="title">A Web Application for Storing URLs to Online Media.</h4></p>';
                            echo '</div>'; // <!-- END PANEL --> 
                        echo '</div>'; // <!-- END COLUMN (12) --> 
                    echo '</div>'; // <!-- END ROW -->
...........

在index.php中,有几行类似于:

echo '<a href="#" class="small button radius expand" onClick="showUrl("All URLs");return false;"/>All URLs</a>';
echo '<a href="#" class="small button radius expand" onClick="showUrl("Television");return false;"/>T.V URLs</a>';
echo '<a href="#" class="small button radius expand" onClick="showUrl("Movie");return false;"/>Movie URLs</a>';
echo '<a href="#" class="small button radius expand" onClick="showUrl("Music");return false;"/>Music URLs</a>';

showURL的参数是双引号的,但对showURL本身的调用也是双引号的。showURL的参数需要有一个双反斜杠。例如

onClick="showUrl(''"All URLs''")