Wenn ich allgemein sprechen, kann es Fälle geben, wenn jQuery Verwendung in müssen, ist AngularJS app heißt jQuery-Plugin verwendet wird, die nicht in abgewinkelte Ausführung ist.
Jeder Controller verfügt über $ scope/diese und Sie können den Umfang eines Winkelelement zugreifen, wenn Sie einen ID-Tag auf dem gleichen DOM-Element als ng-Controller angeschlossen haben:
das DOM:
<div id="myctrl" ng-controller="MyCtrl"></div>
Ihr Controller:
function MyCtrl($scope) {
$scope.anyFunc = function(var1, var2) {
// var1, var2 passed from jquery call will be available here
//do some stuff here
}
}
in jQuery tun Sie dies, und es wird, dass die Steuerung zugreifen und diese Funktion aufrufen:
angular.element('#myctrl').scope().anyFunc('value1','value2');
Lauf Probe
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>
Glücklich zu helfen!
-_- Warum Sie jquery müssen ?? Du hast angularjs. Versuchen Sie zu lernen, es richtig zu verwenden –
Wenn Sie var1, var2 dynamisch von Server-Seite Skript zur Seite Renderzeit definiert werden müssen, können Sie module.value ('var1', foo) und injizieren var1 in Ihrem Controller –
Bitte helfen Sie mir, wie um angularjs von jquery anzurufen, möchte ich beide in meiner webapplication haben – Tajkumar