仅两次单击firefox后,ng-click将无法工作

时间:2015-07-28 17:32:51

标签: javascript angularjs firefox

我一直在研究这个问题,但找不到一个很好的理由说明为什么这不起作用。我试图在div的表头中设置一个全选复选框。我目前的解决方案适用于除Firefox以外的所有浏它在第一次点击时会起作用,并且在再次点击时会起作用,但不会再次起作用。我的控制台将显示该值两次,然后它没有注册。 这是我的代码: HTML

<div class="table-responsive" ng-controller="ReportsController">
<table cellspacing="0" cellpadding="0" border="0" class="myreport table table-striped sortable"  style="border-collapse:collapse;">
<thead>
<tr >
<th class="myreport_header" ><p class="titleheader">
<input type="checkbox"  ng-click="toggleAll()" ng-model="isAllSelected" > Select</p>
</th>
</tr>
</thead>
<tbody>
<tr>    
<td><input type="checkbox" ng-checked="isAllSelected" ></td>
<td>sample</td>                        
<td>New</td>
</tr>
<tr>    
<td><input type="checkbox" ng-checked="isAllSelected" ></td>
<td>sample2</td>                        
<td>old</td>
</tr>
</tbody>
</table>
</div>

控制器

reportsApp.controller('ReportsController', function ($scope, $http,$filter, $q, $window) {
$scope.isAllSelected = false;
console.log($scope.isAllSelected)

$scope.toggleAll = function() {
    if ($scope.isAllSelected) {
        $scope.isAllSelected = true;
    } else {
        $scope.isAllSelected = false;
    }
};
});

1 个答案:

答案 0 :(得分:0)

我在firefox中看到了一些奇怪的$ event相关问题。要排除它们,您可以将复选框更改为按钮,看看您是否仍然可以复制该问题。我的猜测是,事件只是在设置了一个复选框后停止触发但是没有按钮。