Javascript 循环以读取IGHierarchycalGrid中的所有行

Javascript 循环以读取IGHierarchycalGrid中的所有行,javascript,jquery,infragistics,ignite-ui,Javascript,Jquery,Infragistics,Ignite Ui,我需要循环读取包含子项的所有行以检查复选框的状态,在此igHierarchicalGrid我有4个级别,我找不到逐个读取所有行和子项的最佳方法 我尝试过getInfo(),但此函数只能获取IGHierarchycalGrid function getInfo() { var $grid = $("#grid"); var RowSelected = $("#grid").igHierarchicalGrid("option", "dataSource"); for (var

我需要循环读取包含子项的所有行以检查复选框的状态,在此
igHierarchicalGrid
我有4个级别,我找不到逐个读取所有行和子项的最佳方法

我尝试过getInfo(),但此函数只能获取
IGHierarchycalGrid

function getInfo() {   
  var $grid = $("#grid");
  var RowSelected = $("#grid").igHierarchicalGrid("option", "dataSource");

  for (var i = 0; i < RowSelected.length; i++) {
    var cell = $grid.igGrid("cellAt", 1, i)
    var $checkBox = $(cell.children[0]);
    if ($checkBox.prop("checked")) {
        updatetrue(RowSelected[i].FCU_SCREEN_NAME, RowSelected[0].FCU_TYPE, RowSelected[i].FCU_PARENT_NODE, RowSelected[i].FCU_CHAILD_NODE);

    } else {
        updatefalse(RowSelected[i].FCU_SCREEN_NAME, RowSelected[0].FCU_TYPE, RowSelected[i].FCU_PARENT_NODE, RowSelected[i].FCU_CHAILD_NODE);

    }
  }
  alert("Updated Successfuly");
}
函数getInfo(){code> var$grid=$(“#grid”); var RowSelected=$(“#网格”).igHierarchycalGrid(“选项”,“数据源”); 对于(变量i=0;i 这是网格:

$("#grid").igHierarchicalGrid({
    width: "100%",

    maxDataBindDepth: 4,

    //initialExpandDepth: 4,
    dataSource: Main, //Array of objects defined above
    fixedHeaders: true,
    primaryKey: "FCU_SNO",
    autoGenerateColumns: true,
    rowExpanding: function (e, args) {

        var grid = args.owner, expandedRows, i;
        expandedRows = $(args.parentrow).closest('tbody').find('tr[state=e]');
        for (i = 0; i < expandedRows.length; i++) {
            grid.collapse(expandedRows[i]);
        }

    },
    width: '99%',
    height: '480px',
    columns: [
        { headerText: "<br/>Code", key: "FCU_SNO", dataType: "int", width: "5%", hidden: true },
        { headerText: "Status", key: "FCU_SCREEN_FLAG", dataType: "bool", width: "5%", template: mytemplate },
        { headerText: "Screen", key: "FCU_SCREEN_NAME", dataType: "string", width: "40%" },
        { headerText: "FCU_TYPE", key: "FCU_TYPE", dataType: "string",  hidden: true },
        { headerText: "FCU_PARENT_NODE", key: "FCU_PARENT_NODE", dataType: "number", hidden: true},
        { headerText: "FCU_CHAILD_NODE", key: "FCU_CHAILD_NODE", dataType: "number", hidden: true},
    ],
    autofitLastColumn: false,
    autoGenerateColumns: false,
    dataSource: Main,
    responseDataKey: "results",
    autoCommit: true,
    primaryKey: "FCU_SNO",
    dataRendered: function (evt, ui) {
        ui.owner.element.find("tr td:nth-child(4)").css("text-align", "left");
    },

    features: featuresList,
    //defaultChildrenDataProperty: "Details1",
    columnLayouts: [{
        name: "Level1",
        features: featuresList,
        childrenDataProperty: "Details1",
        autoGenerateLayouts: true,
        autoGenerateColumns: false,
        fixedHeaders: true,
        primaryKey: "FCU_PARENT_NODE",
        columns: [
            { headerText: "<br/>Code", key: "FCU_SNO", dataType: "int", width: "5%", hidden: true },
            { headerText: "Status", key: "FCU_SCREEN_FLAG", dataType: "bool", width: "5%", template: mytemplate },
            { headerText: "Screen", key: "FCU_SCREEN_NAME", dataType: "string", width: "40%" },
            { headerText: "FCU_TYPE", key: "FCU_TYPE", dataType: "string", hidden: true },
            { headerText: "FCU_PARENT_NODE", key: "FCU_PARENT_NODE", dataType: "number", hidden: true },
            { headerText: "FCU_CHAILD_NODE", key: "FCU_CHAILD_NODE", dataType: "number", hidden: true },
        ],
        columnLayouts: [
            {
                name: "Level2",
                features: featuresList,
                childrenDataProperty: "Details2",
                autoGenerateLayouts: true,
                autoGenerateColumns: false,
                primaryKey: "FCU_PARENT_NODE",
                columns: [
                    { headerText: "<br/>Code", key: "FCU_SNO", dataType: "int", width: "5%", hidden: true },
                    { headerText: "Status", key: "FCU_SCREEN_FLAG", dataType: "bool", width: "5%", template: mytemplate },
                    { headerText: "Screen", key: "FCU_SCREEN_NAME", dataType: "string", width: "40%" },
                    { headerText: "FCU_TYPE", key: "FCU_TYPE", dataType: "string", hidden: true },
                    { headerText: "FCU_PARENT_NODE", key: "FCU_PARENT_NODE", dataType: "number", hidden: true },
                    { headerText: "FCU_CHAILD_NODE", key: "FCU_CHAILD_NODE", dataType: "number", hidden: true },
                ],
                columnLayouts: [
                    {
                        name: "Level3",
                        features: featuresList,
                        childrenDataProperty: "Details3",
                        autoGenerateLayouts: true,
                        autoGenerateColumns: false,
                        primaryKey: "FCU_PARENT_NODE",
                        columns: [
                            { headerText: "<br/>Code", key: "FCU_SNO", dataType: "int", width: "5%", hidden: true },
                            { headerText: "Status", key: "FCU_SCREEN_FLAG", dataType: "bool", width: "5%", template: mytemplate },
                            { headerText: "Screen", key: "FCU_SCREEN_NAME", dataType: "string", width: "40%" },
                            { headerText: "FCU_TYPE", key: "FCU_TYPE", dataType: "string", hidden: true },
                            { headerText: "FCU_PARENT_NODE", key: "FCU_PARENT_NODE", dataType: "number", hidden: true },
                            { headerText: "FCU_CHAILD_NODE", key: "FCU_CHAILD_NODE", dataType: "number", hidden: true },
                        ],

                    }
                ]
            }
        ]
    }]
});
$(“#网格”).igHierarchycalGrid({
宽度:“100%”,
maxDataBindDepth:4,
//初始深度:4,
dataSource:Main,//上面定义的对象数组
fixedHeaders:true,
主键:“FCU_SNO”,
autoGenerateColumns:正确,
行扩展:函数(e,args){
var grid=args.owner,expandedRows,i;
expandedRows=$(args.parentrow).closest('tbody').find('tr[state=e');
对于(i=0;i代码”,键:“FCU_SNO”,数据类型:“int”,宽度:“5%”,隐藏:true},
{标题文字:“状态”,键:“FCU屏幕标志”,数据类型:“bool”,宽度:“5%”,模板:mytemplate},
{headerText:“Screen”,键:“FCU_Screen_NAME”,数据类型:“string”,宽度:“40%”,
{headerText:“FCU_类型”,键:“FCU_类型”,数据类型:“字符串”,隐藏:true},
{headerText:“FCU\U父节点”,键:“FCU\U父节点”,数据类型:“数字”,隐藏:true},
{headerText:“FCU_CHAILD_节点”,键:“FCU_CHAILD_节点”,数据类型:“number”,隐藏:true},
],
autofitLastColumn:false,
自动生成列:false,
数据来源:Main,
回答:“结果”,
自动提交:对,
主键:“FCU_SNO”,
dataRendered:函数(evt、ui){
ui.owner.element.find(“trtd:nth child(4)”).css(“文本对齐”,“左”);
},
特色:特色列表,
//defaultChildrenDataProperty:“Details1”,
专栏布局:[{
名称:“1级”,
特色:特色列表,
childrenDataProperty:“详细信息1”,
autoGenerateLayouts:正确,
自动生成列:false,
fixedHeaders:true,
primaryKey:“FCU\u父节点”,
栏目:[
{headerText:“
代码”,键:“FCU_SNO”,数据类型:“int”,宽度:“5%”,隐藏:true}, {标题文字:“状态”,键:“FCU屏幕标志”,数据类型:“bool”,宽度:“5%”,模板:mytemplate}, {headerText:“Screen”,键:“FCU_Screen_NAME”,数据类型:“string”,宽度:“40%”, {headerText:“FCU_类型”,键:“FCU_类型”,数据类型:“字符串”,隐藏:true}, {headerText:“FCU\U父节点”,键:“FCU\U父节点”,数据类型:“数字”,隐藏:true}, {headerText:“FCU_CHAILD_节点”,键:“FCU_CHAILD_节点”,数据类型:“number”,隐藏:true}, ], 专栏布局:[ { 名称:“二级”, 特色:特色列表, childrenDataProperty:“详细信息2”, autoGenerateLayouts:正确, 自动生成列:false, primaryKey:“FCU\u父节点”, 栏目:[ {headerText:“
代码”,键:“FCU_SNO”,数据类型:“int”,宽度:“5%”,隐藏:true}, {标题文字:“状态”,键:“FCU屏幕标志”,数据类型:“bool”,宽度:“5%”,模板:mytemplate}, {headerText:“Screen”,键:“FCU_Screen_NAME”,数据类型:“string”,宽度:“40%”, {headerText:“FCU_类型”,键:“FCU_类型”,数据类型:“字符串”,隐藏:true}, {headerText:“FCU\U父节点”,键:“FCU\U父节点”,数据类型:“数字”,隐藏:true}, {headerText:“FCU_CHAILD_节点”,键:“FCU_CHAILD_节点”,数据类型:“number”,隐藏:true}, ], 专栏布局:[ { 名称:“三级”, 特色:特色列表, childrenDataProperty:“Details3”, autoGenerateLayouts:正确, 自动生成列:false, primaryKey:“FCU\u父节点”, 栏目:[ {headerText:“
代码”,键:“FCU_SNO”,数据类型:“int”,宽度:“5%”,隐藏:true}, {标题文字:“状态”,键:“FCU屏幕标志”,数据类型:“bool”,宽度:“5%”,模板:mytemplate}, {headerText:“Screen”,键:“FCU_Screen_NAME”,数据类型:“string”,宽度:“40%”, {headerText:“FCU_类型”,键:“FCU_类型”,数据类型:“字符串”,隐藏:true}, {headerText:“FCU\U父节点”,键:“FCU\U父节点”,数据类型:“数字”,隐藏:true}, {headerText:“FCU_CHAILD_节点”,键:“FCU_CHAILD_节点”,数据类型:“number”,隐藏:true}, ], } ] } ] }] });
IGHierarchycalGrid API提供了一个名为的方法,该方法将为您提供一个已创建的所有子窗口小部件的数组。 请注意,当用户展开给定行时,父网格会动态创建此类实例,而不是父网格中当前可见的所有行<
let currentChild = $("#hierarchicalGrid").igHierarchicalGrid('allChildrenWidgets')[0]
let currentDataView = child.dataSource.dataView();
// ….
// some custom logic for checking the records….