剑道菜单中的ng-class绑定

时间:2016-05-12 15:09:00

标签: angularjs kendo-ui angular-ng-class

我正在尝试将CS​​S类绑定到kendo菜单的按钮: 这是我的菜单代码:

               {
                    id: "button_grille_tri",
                    type: "splitButton",
                    menuButtons : $scope.liste_recherche,
                    click: function(e){
                        $scope.rechercheColonnes(e);
                    }
                },

它是菜单的一部分。

以下是liste_recherche变量的实例化:

for(var i=0;i<$scope.siagridColumns.length;i++){
  $scope.liste_recherche.push({ 
    cssClass : "champ_recherche",
    attributes: {"ng-class": "{'tick_recherche':tickActivation("+"'"+$scope.siagridColumns[i].id+ "'"+ ")}"} ,
    text : $scope.siagridColumns[i].header, id : $scope.siagridColumns[i].id });
        }

tickActivation是一个返回布尔值的函数:

    $scope.tickActivation = function(id){
        return $scope.etats[id];
    };

我尝试了几件事: 1)如果我按类替换ng-class,则该类正在工作但不是动态的 2)我将ng-class放入文本部分,格式良好,无论报价问题,它都没有用,我尝试了所有的可能性 3)即使我用tick替换tickActivation(...)它也不起作用。 4)我把$ scope。$ apply到另一个:

    $scope.rechercheColonnes = function(e){
        if ($scope.colonnesTri.length == $scope.siagridColumns.length){
            $scope.colonnesTri =[];
        }
        var compteur = 0;
        for (var i=0;i<$scope.colonnesTri.length;i++){
            if ($scope.colonnesTri[i] == e.id)
                compteur++;
        }
        if(compteur == 0){
            $scope.colonnesTri.push(e.id);
        }
        $scope.etats[e.id] = true;
        $scope.$apply();
    }

并且使用$ apply,我可以看到tickActivation用于菜单上的每次点击,具有良好的参数和良好的回报。但是没有绑定,ng-class也不起作用......我没有在任何文档/社区找到任何答案。 至少,感谢您阅读帖子,我希望有人能找到解决方案。

0 个答案:

没有答案