Javascript AngularJS作用域应用在单击时不起作用
我正在尝试使用以下代码在单击事件后使用范围变量值:Javascript AngularJS作用域应用在单击时不起作用,javascript,angularjs,scope,Javascript,Angularjs,Scope,我正在尝试使用以下代码在单击事件后使用范围变量值: $('#teamDetailTabs a').click(function(data) { $scope.$apply(function(){ console.log($(this).attr('data-target')); $scope.activeTab = $(this).attr('data-target');
$('#teamDetailTabs a').click(function(data) {
$scope.$apply(function(){
console.log($(this).attr('data-target'));
$scope.activeTab = $(this).attr('data-target');
console.log($scope.activeTab);
});
});
问题是$scope.activeTab值是未定义的,即使我使用了$scope.apply
我怎样才能解决它呢
谢谢你的建议 这个内部apply调用的上下文不是您所期望的,它不再是一个domeElement。因此,您可以这样修复它:
var self = this;
$scope.$apply(function() {
console.log($(self).attr('data-target'));
$scope.activeTab = $(self).attr('data-target');
console.log($scope.activeTab);
});
不过,我强烈建议您使用ngClick,不要在Angular应用程序中使用jQuery风格的方法。看看这个非常有趣的例子