2017-07-07 97 views
0

我正面临ng-click事件的问题。以下是我的代码。当我点击元素时,它会检索span标记,如果我调用currentTarget,它会给出li元素。我想获得ng-click上的<a>元素。并且在获取元素之后,我必须检查它是否有一个名为'havesub'的类,我该如何实现它?要通过ng-click使用angularjs来获取点击元素的标记名

<li> 
    <a class="havesub" ui-sref="" ng-click="openmenu($event)"> 
    <img src="images/icon-03.png" alt="menu" /> 
    <span>Menu item1</span> 
    </a> 
</li> 

下面是我在控制器功能

app.controller("con", function($scope) { 
    $scope.openmenu = function($event) { 
    var targets = $event.currentTarget; 
    }; 
}); 

回答

0

var app = angular.module("ngClickApp", []); 
 
app.controller('ngClickCtrl', ['$scope', function ($scope) { 
 
$scope.click=function(event){ 
 
\t alert(angular.element(event.currentTarget).hasClass("havesub")); 
 
} 
 
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<html ng-app="ngClickApp"> 
 
<head> 
 
\t <title>Validation messages</title> 
 
</head> 
 
<body ng-controller="ngClickCtrl"> 
 
<form name="userForm"> 
 

 
<li> 
 
    <a href class="havesub" ng-click="click($event)"> 
 
    <img src="1.png" alt="menu" /> 
 
    <span>Menu item1</span> 
 
    </a> 
 
</li> 
 

 
</form> 
 
</body> 
 
</html>

event.currentTarget工作正常,我

<html ng-app="ngClickApp"> 
<head> 
    <title>Validation messages</title> 
</head> 
<body ng-controller="ngClickCtrl"> 
<form name="userForm"> 

<li> 
    <a href class="havesub" ng-click="click($event)"> 
    <img src="1.png" alt="menu" /> 
    <span>Menu item1</span> 
    </a> 
</li> 

</form> 
<script type="text/javascript"> 
var app = angular.module("ngClickApp", []); 
app.controller('ngClickCtrl', ['$scope', function ($scope) { 
$scope.click=function(event){ 
    alert(angular.element(event.currentTarget).hasClass("havesub")); 
} 
}]); 
</script> 
</body> 
</html>