【问题标题】:How to preventDefault on anchor tags using ng-click如何使用 ng-click 防止锚标签上的默认值
【发布时间】:2015-10-13 15:19:50
【问题描述】:

在这里搜索答案后,不幸的是,对我没有任何帮助。因此,我希望通过发布我的代码,您将能够提供帮助……每次我单击其中一个选项卡时,页面都会跳起来。我怎样才能防止它发生?我相信 ng-click 导致它,因为常规 jquery preventDefault() 没有做这项工作:

HTML:

        <ul id="tabs" class="nav nav-pills">
            <li><a class="scroll" ng-click="myCtrl.tab=1">New York</a></li>
            <li><a class="scroll" ng-click="myCtrl.tab=2">Montreal</a></li>
            <li><a class="scroll" ng-click="myCtrl.tab=3">Rockey Mountains</a></li>
        </ul>

app.js:

(function() {
    var app = angular.module('myApp', []);
        app.controller('myController', function() {
        this.tab = 1;   
    });
})();

【问题讨论】:

    标签: angularjs angularjs-ng-click preventdefault


    【解决方案1】:

    您可以将$event.preventDefault() 添加到ng-click 指令中:

    <ul id="tabs" class="nav nav-pills">
        <li><a class="scroll" ng-click="myCtrl.tab=1; $event.preventDefault();">New York</a></li>
        <li><a class="scroll" ng-click="myCtrl.tab=2; $event.preventDefault();">Montreal</a></li>
        <li><a class="scroll" ng-click="myCtrl.tab=3; $event.preventDefault();">Rockey Mountains</a></li>
    </ul>
    

    【讨论】:

    • 您好,感谢您的帮助。我已经尝试实现您建议的代码,但不幸的是,每次点击这些链接时它仍然会跳转到页面顶部...
    猜你喜欢
    • 2015-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多