Выполните итерацию по столбцу флажка сетки кендо / телерика и верните массив логических значений в том же порядке, в котором они отображаются в сетке - PullRequest
0 голосов
/ 18 марта 2020

У меня есть Telerik Grid с тремя столбцами. Чтобы упростить и сосредоточиться только на части объявления столбцов, я размещаю здесь только объявление столбцов, а остальные здесь не публикую.

Из функции javascript я пытаюсь перебрать все элементы столбца флажка и получить массив логических значений в том же порядке, в котором они отображаются в сетке. Моя javascript функция GetListOfChecks работает, но возвращает только логический массив, соответствующий элементам текущей страницы сетки, и отбрасывает другие элементы на других страницах сетки (она не возвращает остальные элементы на других страницах сетки). сетки). Как я могу это сделать?

    .Columns(columns =>
    {
        columns.Bound(s => s.field1).Filterable(false);
        columns.Bound(s => s.field2).Filterable(false);                
        columns.Bound(s => s.BoolField).HeaderTemplate("<label><input id='selectall' class='chkbx' type='checkbox' onclick='ToggleChkBox(this.checked);'>All selected</label>")
                                    .ClientTemplate("<input type='checkbox' class='chkbxq' name='chkEnabled' <#= BoolField ? checked='checked' : '' #> 'text-align:center' onclick='onClickCheckBoxColumn()'/>")
               .ReadOnly(false)
               .Title("Activa")
               .Width(40)
               .HtmlAttributes(new { style = "text-align:center" })
               .HeaderHtmlAttributes( new { style = "text-align:center" });                
    })

Javascript функция :

function GetListOfChecks()
{
    var listOfChecks = [];
    $('.chkbxq').each(function () {
        //listOfChecks .push($(this).attr('checked') === 'checked' ? true : false);
        listOfChecks .push($(this).prop('checked'));
    });

    return listOfChecks;
}
...