Uncaught TypeError: Невозможно прочитать свойство 'beginupdate' из неопределенного - PullRequest
0 голосов
/ 27 марта 2019

Проблема отображается в журнале консоли Google Chromes каждый раз, когда загружается моя jqxgrid, что вызывает

Мой jqxgrid не прекращает показывать загрузчик (загружается вечно) каждый раз, когда моя страница загружается, а в журнале консоли Google Chromes отображается сообщение об ошибке.

Uncaught TypeError: Невозможно прочитать свойство 'beginupdate' из неопределенного

Я попытался переименовать идентификатор, а также имя его переменной, поскольку он может конфликтовать. Но, похоже, ничего из этого не работает.

Фрагмент кода моей сетки jqx

// select rows.
var rowsGrab = $("#table tbody tr");
// select columns.
var columnsGrab = $("#table thead th");
var data = [];
for (var i = 0; i < rowsGrab.length; i++) {
    var row = rowsGrab[i];
    var datarow = {};
    for (var j = 0; j < columnsGrab.length; j++) {
        // get column's title.
        var columnName = $.trim($(columnsGrab[j]).text());
        // select cell.
        var cell = $(row).find('td:eq(' + j + ')');
        datarow[columnName] = $.trim(cell.text());
    }
    data[data.length] = datarow;
}

var grabSource = {
    localdata: data,
    datatype: "array",
    datafields:
    [
            { name: "Code", type: "string" },
            { name: "Provider", type: "string" },
            { name: "Description", type: "string" },
            { name: "Status", type: "string" },
    ],
    sortcolumn: 'Status',
    sortdirection: 'asc'
};
var dataAdapter = new $.jqx.dataAdapter(grabSource, {
    loadComplete: function (data) { },
    loadError: function (xhr, status, error) { }    
});

$("#grid-grab").jqxGrid({
    width: "99%",
    source: dataAdapter,
    columnsresize: true,
    autoheight: true,
    sortable: true,
    showfilterrow: true,
    filterable: true,
    pageable: true,
    selectionmode: "singlecell",
    columns: [
        { text: 'Code', dataField: 'Code', align: 'center', width: "30%",filtertype: 'input',cellsalign: 'center'},
        { text: 'Provider', dataField: 'Provider', align: 'center', width: "20%",filtertype: 'input',cellsalign: 'center'},
        { text: 'Description', dataField: 'Description', align: 'center', width: "30%",filtertype: 'input',cellsalign: 'center'},
        { text: 'Status', dataField: 'Status', align: 'center', filtertype: 'checkedlist', width: "20%",cellsalign: 'center',}
    ]
});


$('#clearfilteringbutton-grab').click(function () {
    $("#grid-grab").jqxGrid('clearfilters');
});

$("#table").css("display","none");
//this wasn't able to work because of error encounter above.

Это где jqxGrid реализуется.

//jqx will pull values here using its table id
<div id="voucher-list" class="tab-pane fade">
    <table class="table table-striped" id="table">
        <thead>
            <tr>
                <th>Code</th>
                <th>Provider</th>
                <th>Description</th>
                <th>Status</th>
            </tr>
        </thead>
        <tbody>
            <tr>                                 
                <td>QWE123</td>
                <td>Manager</td>
                <td>500 off</td>        
                <td>Active</td>     
            </tr>
            <tr>                                 
                <td>ASD456</td>
                <td>Staff</td>
                <td>1500 off</td>       
                <td>USED</td>       
            </tr>                            
        </tbody>
    </table>
</div>
<div id="grid-grab"> </div>

Результат этого кода частично работает, так как данные отображаются, но загрузчик не уходит, а разбиение на страницы не выполняется, когда присутствует много данных.

...