Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数据ng单击不在带有数据ng href的模板中工作_Javascript_Angularjs_Angularjs Directive_Angularjs Ng Repeat_Angular Ui - Fatal编程技术网

Javascript 数据ng单击不在带有数据ng href的模板中工作

Javascript 数据ng单击不在带有数据ng href的模板中工作,javascript,angularjs,angularjs-directive,angularjs-ng-repeat,angular-ui,Javascript,Angularjs,Angularjs Directive,Angularjs Ng Repeat,Angular Ui,嗨,我是新的角度和面对一个奇怪的问题与角度模板。我的模板包含以下代码: <li hover-menu data-ng-repeat="nav in navigations" data-ng-class="{'active': current == nav.name.toLowerCase() }"> <a data-ng-href="{{nav.link}}" data-ng-click="nav.collapse = !nav.collapse">

嗨,我是新的角度和面对一个奇怪的问题与角度模板。我的模板包含以下代码:

<li hover-menu data-ng-repeat="nav in navigations" data-ng-class="{'active': current == nav.name.toLowerCase() }">
            <a data-ng-href="{{nav.link}}" data-ng-click="nav.collapse = !nav.collapse">
                <i class="{{nav.icon}} fa-lg-icn"></i><span class="menu-title">{{nav.name}}</span>
            </a>
        <ul class="dropmenu" data-ng-show="nav.sub_menu != false" collapse="nav.collapse">
            <li data-ng-repeat="item in nav.sub_menu">
                <a data-ng-href="{{item.link}}" data-ng-click="showScrollAndGo(item.link)"><i class="fa fa-circle mrm mlm"></i>{{item.name}}</a>
            </li>
        </ul>
    </li>
知道我哪里做错了吗

<a data-ng-href="{{item.link}}" data-ng-click="showScrollAndGo($event, item.link)"><i class="fa fa-circle mrm mlm"></i>{{item.name}}</a>


 $rootScope.showScrollAndGo = function ($event, path) {
                    $event.preventDefault();
                    alert(path)
                    $rootScope.showSpinner = false;
                    $location.path(path);
                }

您必须阻止事件的默认操作,因为您在锚元素上,它将触发浏览器更改视图。

我想您最好检查一下需求。请参见,在单击锚定标记时,您试图同时执行两个事件

因此,您需要明确的是,在单击锚定标记时触发一个事件,或者将用户重定向到某个链接,或者在单击时执行某些操作

当状态因href的更改而改变时,您不需要考虑折叠,因为当您返回到早期状态/href时,您会发现折叠处于早期状态


希望这有帮助

试试这个@harsh那个仍然不起作用的。你能把完整的代码放进去吗。当我在一个简单的视图中使用我的代码时,我想ng-repeat可能存在一些问题。这里显示的showScrollAndGo不是从视图中调用的。
<a data-ng-href="{{item.link}}" data-ng-click="showScrollAndGo($event, item.link)"><i class="fa fa-circle mrm mlm"></i>{{item.name}}</a>


 $rootScope.showScrollAndGo = function ($event, path) {
                    $event.preventDefault();
                    alert(path)
                    $rootScope.showSpinner = false;
                    $location.path(path);
                }