2016-08-11 12 views
0

普通のjavascript関数display(str)ng-ifにコールしたいと思います。この機能は、あなたがこのようなあなたのapp.runモジュールにグローバル関数を作ることができ、コントローラコントローラ範囲外のng-ifからjavascript関数を呼び出す方法AngularJS

HTML

<body ng-app="myApp"> 
    <div id="mycntrl" ng-controller="mainController"> 
     <select id="selectid1" name="selectid1" ng-model="angularselect"> 
     <option ng-value=""></option> 
     <option ng-value="val1">Value 1</option> 
     <option ng-value="val2">Value 2</option> 
     </select> Value : {{angularselect}} 
    <div ng-if="display(angularselect) === true"> 
    <p> 
     Returned true 
    </p> 
    </div> 
    </div> 
</body> 

JS

var myApp = angular.module('myApp',[]); 

myApp.controller('mainController',function($scope){ 

}); 

function display(str) 
{ 
    console.log('Javascript function called with argument '+str); 
    return true; 
} 

FIDDLE

答えて

0

の範囲外です。

myApp.run(function($rootScope){ 
     $rootScope.display = function(str) { 
      console.log('Javascript function called with argument '+str); 
      return true; 
     } 
    }) 

と、このようにHTMLコードでそれを使用する:ここ

<div ng-if="$root.display(angularselect) === true"> 

あなたが角度のアプリケーションでグローバル変数にアクセスするために$windowオブジェクトを利用することができますフィドル JsFiddle

0

両者が同じファイル内にある場合は、スコープを使用して表示方法を割り当てることができます。

例 -

myApp.controller('mainController',function($scope){ 
$scope.display = display; 
}); 
関連する問題