Kendo ui 使用剑道UI网格

Kendo ui 使用剑道UI网格,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,这应该是一个简单的一个,但我找不到任何令人讨厌的,有没有其他人有这个运气 我正在向绑定到网格的剑道数据源添加项。有没有一种方法可以让我使用网格 $("#grid").data("kendoGrid").dataSource.add(data); $("#grid").data("kendoGrid").dataSource.sort(); 或是当我无法控制的时候 $(“#网格”).data(“kendoGrid”).refresh()这应该对它进行排序 真的无法让任何东西工作,我希望能

这应该是一个简单的一个,但我找不到任何令人讨厌的,有没有其他人有这个运气

我正在向绑定到网格的剑道数据源添加项。有没有一种方法可以让我使用网格

$("#grid").data("kendoGrid").dataSource.add(data);
    $("#grid").data("kendoGrid").dataSource.sort();
或是当我无法控制的时候
$(“#网格”).data(“kendoGrid”).refresh()这应该对它进行排序

真的无法让任何东西工作,我希望能够动态地将记录添加到网格,并拥有网格度假村

这就是我在cshtml页面中定义网格的方式

@(Html.Kendo().Grid(Model.List)
.Name("grid")
.Columns(columns =>
{
    columns.Bound(p => p.Id).Width(100);
    columns.Bound(p => p.Age).Width(100);
    columns.Bound(p => p.Name).Width(100);
})
.Events(events => events.Change("onChange").DataBound("onDataBound"))
.DataSource(dataSource => dataSource
    .Ajax()
    .Model(m => m.Id(g => g.Gid))
    .Read(read => read.Action("GetName", "NamesController", new { Id = Model.Id }).Type(HttpVerbs.Get))
    .Sort(sort => {
        sort.Add(p => p.Id);
        sort.Add(p => p.Age);
        sort.Add(p => p.Name);
    })

    )

数据源有一个排序方法(文档)。基本上,您需要修复排序条件,然后调用此方法

例如:

var dataSource = new kendo.data.DataSource({
  data: [
    { name: "Jane Doe", age: 30 },
    { name: "John Doe", age: 33 }
  ]
});
dataSource.sort({ field: "age", dir: "desc" });

基本上是设置。ServerOperation(false)修复此问题。这将启用客户端排序

,因此每次向数据源对象添加数据时,我都需要重新定义排序标准?这似乎不对..不,您可能也在数据源中定义了排序条件,因此应该对其进行排序。在此处检查:您将看到添加的元素自动插入到正确的位置;区别是什么,我添加了如何在cshtml页面中定义我的网格,我不知道为什么它不工作。它最初排序了吗(在添加新元素之前)?您是否尝试定义排序方向(升序/降序)?至少在JavaScript中,您必须定义排序方向(没有默认方向)。
.DataSource(dataSource => dataSource        
 .Ajax()
 .ServerOperation(false)        
)