0

将新数据添加到当前网格数据源后,我遇到了剑道网格排序问题。我以这种方式将新数据添加到数据源:

$.ajax({
        type: 'POST',
        contentType: 'application/json; charset=utf-8',
        data: JSON.stringify(updateModel),
        dataType: 'json',
        url: '@Url.Action("SonKayitGetir")',
        success: function (data) {
            var grid = $('#grid').data("kendoGrid");
            for (i = 0; i < data.length ; i++) {
                data[i].KayitYaratmaTarihi = kendo.parseDate(data[i].KayitYaratmaTarihi, "HH:mm:ss - dd/MM/yyyy");
                data[i].KayitYaratmaTarihi = kendo.toString(data[i].KayitYaratmaTarihi, "HH:mm:ss - dd/MM/yyyy");
                grid.dataSource.insert(0, data[i]);
        }
    },
    error: function (data) {
        alert('Auto Refresh failed...');
    }
});

我正在使用 Insert 方法,因为如果我使用dataSource.Add()我应该datasource.Read()在那之后使用。但我不想回到控制器。虽然我插入了新数据,但似乎剑道网格排序功能没有看到新数据。它适用于旧数据。我怎么解决这个问题?datasource有没有另一种方法可以在不调用dataSource.read()函数的情况下添加新数据?

4

1 回答 1

0

您的数据应采用 jason 结构

你可以试试这个

for (i = 0; i < data.length ; i++) {    

    var ins = { Name1:kendo.parseDate(data[i].KayitYaratmaTarihi, "HH:mm:ss - dd/MM/yyyy") , Name2:kendo.toString(data[i].KayitYaratmaTarihi, "HH:mm:ss - dd/MM/yyyy")  }; 

    grid.dataSource.insert(ins);
}

我希望这可以帮助你:)

于 2013-09-12T10:33:03.020 回答