2013-09-21 40 views
0

我想顯示每個鏈接點擊事件的鏈接文本,因爲我寫了一個指令'showtext'裏面我獲取鏈接文本,howerver我無法通過通過函數$作用域值。$申請( 「setMessage($ element.text)」)。我也嘗試$ scope.message = $ element.text內部指令,但仍然它不是working.plz幫助從指令共享數據到控制器

<div ng-controller="menu"> 
<a href="#" showtext>Click</a> 
<a href="#" showtext>Click1</a> 
<a href="#" showtext>Click2</a> 
<button showtext>OK</button> 
<p ng-model="message">You say {{message}}</p> 
</div> 


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

    app.factory('shared',function(){ 

    }); 

app.controller('menu',function($scope){ 
    $scope.message = "" ; 
    $scope.setMessage = function(msg){ 
    $scope.message = msg; 
} 
}); 

app.directive('showtext',function(){ 
return { 
    link: function($scope,$element){ 
     $element.bind('click',function(){ 
      console.log($element.text()); 
      $scope.$apply("setMessage($element.text)"); 
     }); 
    } 
} 
}); 
+0

創建一個提示行爲 – Chandermani

回答

3

如果更換

$scope.$apply("setMessage($element.text)"); 

$scope.$apply(function() { 
    $scope.setMessage($element.text()) 
}); 

everything works fine

+0

嘿工作像一個魅力..非常感謝你 – user2534381

相關問題