未捕获错误:语法错误,无法识别的表达式:#/ angularjs和jquery

ram*_*ram 14 jquery twitter-bootstrap angularjs

每当我的页面加载时,我的控制台中都会显示以下错误

"未捕获的错误:语法错误,无法识别的表达式:#/ about"

我的代码如下:

                <li class="active">
                    <a href="/">Home</a>
                </li>
                <li class="">
                    <a href="#/about" title="About Us">About</a>
                </li>
                <li class="">
                    <a href="#/pricing">Pricing</a>
                </li>
Run Code Online (Sandbox Code Playgroud)

它显示了所有初始实例.最初,它显示为#/ about,因为它是第一个,如果我删除关于我们选项卡它将显示定价页面链接.

它不是引导标签问题,这只是简单的导航

app.js中的路由代码:

$routeProvider.when('/', {
        templateUrl: 'partials/home.html'
    }).when('/account', {
        templateUrl: 'partials/account.html',
    }).when('/terms', {
        templateUrl: 'partials/terms.html'
    }).when('/about', {
        templateUrl: 'partials/about.html'
    }).otherwise({
        redirectTo: '/'
    });
Run Code Online (Sandbox Code Playgroud)

我已经调试了它的bootstrap,bootstrap nav导致这个问题的问题:"nav navbar-nav"修复了这个是data-target ="#"但是想要正确解决这个问题

Bid*_*han 17

这很可能是一个Bootstrap问题.尝试使用data-target链接上的属性,如下所示

<a href="#/about" data-target="#about" title="About Us">About</a>
Run Code Online (Sandbox Code Playgroud)

  • 我刚刚删除了所有`data-toggle`属性并修复了. (3认同)
  • 这通过添加data-target ="#"修复了我的问题 (2认同)

Sud*_*ary 6

好的,你必须删除/你的html成为的斜杠,

<a href="#about" title="About Us">About</a>
Run Code Online (Sandbox Code Playgroud)

如果你想保留斜线,' /'你必须使用data-target属性as,

<a href="#/about" title="About Us" data-target="#about">About</a>
Run Code Online (Sandbox Code Playgroud)

更多关于它的信息


Mig*_*ero 5

这个问题也发生在 angular 2 项目上。我只是将 data-target="#" 添加到锚链接。它解决了我的问题。

 <a data-target="#" [routerLink]="['/link']">my link</a>. 
Run Code Online (Sandbox Code Playgroud)