Angularjs 循环通过剑道网格工具栏上剑道ui菜单中的复选框
我试图在Angular中的剑道网格工具栏中实现剑道ui菜单。我正在菜单上手动创建列列表。我可以在单击复选框时显示/隐藏列。当菜单打开时,我需要遍历复选框,以便根据网格中每列上设置的选项设置选中/未选中。问题是我不知道如何访问子节点的检查/取消检查 下面的代码获取所有子节点,但我不知道如何访问它们的选中/未选中值:Angularjs 循环通过剑道网格工具栏上剑道ui菜单中的复选框,angularjs,kendo-ui,kendo-grid,Angularjs,Kendo Ui,Kendo Grid,我试图在Angular中的剑道网格工具栏中实现剑道ui菜单。我正在菜单上手动创建列列表。我可以在单击复选框时显示/隐藏列。当菜单打开时,我需要遍历复选框,以便根据网格中每列上设置的选项设置选中/未选中。问题是我不知道如何访问子节点的检查/取消检查 下面的代码获取所有子节点,但我不知道如何访问它们的选中/未选中值: var columns = $(e.item).find(".k-item:not(:has(.k-group))"); 我有一个勾选/取消勾选的设置,但我不知道如何从“onOpen
var columns = $(e.item).find(".k-item:not(:has(.k-group))");
我有一个勾选/取消勾选的设置,但我不知道如何从“onOpen”访问它们。非常感谢您的帮助。首先您必须找到checkbox元素,然后您可以使用
.prop(“checked”)
方法获取checkbox checked值
因此,如果您想切换“菜单打开”上的复选框值,您可以使用:
$scope.onOpen = function(e) {
var checkboxes = $(e.item).find(".k-item:not(:has(.k-group))").find("input[type='checkbox']");
for(var i = 0; i < checkboxes.length; i++){
var checkbox = $(checkboxes[i]);
checkbox.prop("checked", !checkbox.prop("checked"));
}
}
$scope.onOpen=函数(e){
var复选框=$(e.item).find(.k-item:not(:has(.k-group))).find(“输入[type='checkbox']”);
对于(变量i=0;i
更新的dojo:感谢Jarosław Kończak让我走上了正确的道路,下面是我最终如何使用列上的“隐藏属性”将复选框设置为选中或不选中!通过稍微改变一下他的建议来检验:
$scope.onOpen = function(e) {
var checkboxes = $(e.item).find(".k-item:not(:has(.k-group))").find("input[type='checkbox']");
for (var i = 0; i < checkboxes.length; i++) {
var checkbox = $(checkboxes[i]);
if (checkbox.prop("checked")) {
var fieldData = checkbox.data("field");
var columns = $scope.SearchGrid.columns;
for (var x = 0; x < columns.length; x++) {
if (columns[x].field == fieldData) {
if (columns[x].hidden == true) {
checkbox.prop("checked", false);
}
}
}
}
}
$scope.onOpen=函数(e){
var复选框=$(e.item).find(.k-item:not(:has(.k-group))).find(“输入[type='checkbox']”);
对于(变量i=0;i
}
下面是一个使用动态创建的列而不是“手动”列列表的示例