如何隐藏列在角作用域函数

Kendo Grid How to hide column in Angular scope function?

本文关键字:作用域 函数 何隐藏 隐藏      更新时间:2023-09-26

我想问一下,如何在Scope Angular JS函数中隐藏Kendo Grid中的动态列?

我试着用这个提琴来做:

http://jsfiddle.net/OnaBai/XNcmt/

但是如果我试图在ng-click之后在Angular作用域函数中执行相同的函数:

$scope.hideColumn = function () {
            console.log("Hidding");
            grid.hideColumn("user_role");
};

get error:

TypeError: undefined is not a function
    at Scope.$scope.hideColumn

我怎样才能正确地做到这一点(不仅隐藏,但锁定等…)?

谢谢你的建议。

如果你有一个由kendo设置的kendo网格名称,你可以从控制器中的$作用域访问它。

    <div id="someId" data-kendo-grid="accessMeFromTheControllerID"
    k-auto-bind="false" 
    k-data-source-init={... removed for brevity...}
    k-columns="[
        { field: 'id', title: 'Id' },
        { field: 'columnToBeHidden', title: 'I should be hidden!' }
       ]"
    ></div>

您可以从控制器访问该列,并使用:

$scope.accessMeFromTheControllerID.hideColumn('columnToBeHidden');

如果你想使用JQuery(不是像angular那样的,但知道会很好)

$("#accessMeFromTheControllerID").data("kendoGrid").hideColumn('customerName');