javascript - 无法从 jQuery 调用 Angular ng-click

标签 javascript jquery angularjs jquery-plugins angularjs-scope

我试图从 jQuery 调用 ng-click 但无法让它工作。有人可以告诉我如何正确地做到这一点吗?

HTML:

<a ng-click="changeData()">Testing</a>
<a ng-click="changeData()">Testing 2</a>
<a ng-click="changeData()">Testing 3</a>

jQuery:

$(document).keydown(function(e){
    if (checkNav && checkNav()) return;
    if (e.keyCode == 37) {
        // left
        setCurrent(x,y-1);
        e.preventDefault();
    } else if (e.keyCode == 38) {
        // up
        setCurrent(x-1,y);
        e.preventDefault();
    } else if (e.keyCode == 39) {
        // right
        setCurrent(x,y+1);
        e.preventDefault();
    } else if (e.keyCode == 40) {
        // down
        setCurrent(x+1,y);
        e.preventDefault();
    } else if (e.keyCode == 13) {

        $('a[ng-click="changeData()"]')

    }
});

我希望它在单击 Enter 时调用与 ng-click 相同的函数。如果我在单击 Enter 时具有以下 href 代码,则效果很好:

} else if (e.keyCode == 13) {
                window.location = current.attr('href');
                e.preventDefault();
            }

谢谢!

最佳答案

我认为你的意思是你想要这样的东西。让我知道这是否是您的意图:

index.html

<input ng-keyup="keyFn(event=$event)" ngclick="clickFn()">click</input>

Controller .js

angular.module('myApp')
    .controller('myCtrl', function($scope) {

        $scope.keyFn = function(event){
          if (event.keyCode && event.keyCode === 13/*enter key*/){
              someFunction();
          }
        };
        $scope.clickFn = function(){
            someFunction();
        }
    });

function someFunction(){
    console.log("event fired");
    //functionality shared between click and `enter` keypress
}

关于javascript - 无法从 jQuery 调用 Angular ng-click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31304414/

相关文章:

javascript - 什么是防止悬停影响的更好方法?

javascript - Yahoo YUI DataTable.DataSource,无论如何简单更新?

JavaScript:根据选择的 <option> 在包含 <select> 的表中设置 <td> 的背景颜色

javascript - Angular Service 可以调用 Controller 中调用该服务的函数吗?

javascript - 如何使用 ng-repeat 避免在 HTML 中硬编码 url 名称

javascript - Chrome 中表格的 CSV 导出不起作用 - JavaScript/AngularJS

javascript - iOS 12 中的 PWA 在重新打开应用程序时不再重新执行 Javascript

JavaScript:为什么 FileReader.onload 在 mozilla 中没有被调用?

javascript - 如何实现粘性表头和几列(每列都有复选框或输入)

javascript - 每次数组长度增加时,如何动态地将新内容添加到页面?