微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 如何从页面中的jquery调用angular js函数控制器

如何从 jquery调用angularjs函数或控制器
我是这个angularjs的新手
这里是我的功能,我必须从jquery传递var1和var2我搜索了很多文章,但我不明白.请帮我
<script type="text/javascript">

    function customersController($scope,$http) {
        $http.get("https://tic.com/testingservice/HttpService.svc/operator/var1/var2")
        .success(function (response) { $scope.names = response; });
    }

解决方法

如果我说一般,可能会出现在Angularjs应用程序中需要使用jQuery的情况,即使用Angular版本中没有的jQuery插件.

每个Controller都有$scope / this,如果你有一个ID标签附加到与ng-controller相同的DOM元素,你可以访问一个角元素的范围:

DOM:

<div id="myctrl" ng-controller="MyCtrl"></div>

你的控制器:

function MyCtrl($scope) {
   $scope.anyFunc = function(var1,var2) {
      // var1,var2 passed from jquery call will be available here
      //do some stuff here
   }
}

在jQuery中你这样做,它将访问该控制器并调用函数

angular.element('#myctrl').scope().anyFunc('value1','value2');

运行样品

angular.module('app',[])
    .controller('MyCtrl',function ($scope) {
    $scope.anyFunc = function (var1,var2) {
        alert("I am var1 = " + var1);
        alert("I am var2 = " + var2);
    };
});

$(function(){

    $("#hit").on("click",function(){
       
          angular.element($("#myctrl")).scope().anyFunc('VAR1 VALUE','VAR2 VALUE');
    
    });

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div id="myctrl" ng-app='app' ng-controller="MyCtrl">
Call via jQuery
<button id="hit">Call</button>
</div>

快乐帮助!

原文地址:https://www.jb51.cc/jquery/155932.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐