kendo 同一页面上的多个网格数据不匹配
kendo multiple grid on same page data mismatch
我在单个页面上有两个 ASP MVC Kendo 网格。
当我加载该页面时,我的数据在两个网格之间变得不匹配。
我的两种方法调用,但是当它显示我在两个网格之间混合的所有数据时。
如何解决?
谁能帮帮我?
//This is for Grid1
@(Html.Kendo().Grid<Alliant.Domain.Model1>()
.Name("Model1Grid")
.NoRecords("No record found.")
.Columns(columns =>
{
columns.Bound(e => e.Name).Width("10%");
columns.Bound(e => e.Description).Width("10%").Filterable(false);
})
.Pageable(p =>
{
p.PreviousNext(false);
p.Numeric(false);
})
.Sortable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(Constant.KendoDefaultPageSize)
.Read(read => read.Action("GetDataBySearch", "Model1", new { area = "" }))
.ServerOperation(true)
.Model(Model1 => Model1.Id(x => x.Model1ID))
)
.Resizable(resize => resize.Columns(true))
)
//this is for secounf grid on same page
@(Html.Kendo().Grid<Alliant.Domain.Model2>()
.Name("Model2Grid")
.NoRecords("No record found.")
.Columns(columns =>
{
columns.Bound(e => e.Name).Width("10%");
columns.Bound(e => e.Description).Width("10%").Filterable(false);
})
.Pageable(p =>
{
p.PreviousNext(false);
p.Numeric(false);
})
.Sortable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(Constant.KendoDefaultPageSize)
.Read(read => read.Action("GetData2BySearch", "Model2", new { area = "" }))
.ServerOperation(true)
.Model(Model2 => Model2.Id(x => x.Model2ID))
)
.Resizable(resize => resize.Columns(true))
)
嗨@Arpit 我也面临同样的问题,
某个时间先request
先完成然后在另一个网格中的数据映射。
请检查以下解决方案
- 首先你需要在两个网格中设置
AutoBind(false)
。仅供参考 - Click Me
将以下 jquery 代码添加到您的页面并检查。
$(document).ready(function(){
var Model1Grid= $("#Model1Grid").data("kendoGrid");
var Model2Grid= $("#Model2Grid").data("kendoGrid");
Model1Grid.dataSource.read().then(function(){
Model2Grid.dataSource.read();
});
});
我在单个页面上有两个 ASP MVC Kendo 网格。 当我加载该页面时,我的数据在两个网格之间变得不匹配。 我的两种方法调用,但是当它显示我在两个网格之间混合的所有数据时。 如何解决?
谁能帮帮我?
//This is for Grid1
@(Html.Kendo().Grid<Alliant.Domain.Model1>()
.Name("Model1Grid")
.NoRecords("No record found.")
.Columns(columns =>
{
columns.Bound(e => e.Name).Width("10%");
columns.Bound(e => e.Description).Width("10%").Filterable(false);
})
.Pageable(p =>
{
p.PreviousNext(false);
p.Numeric(false);
})
.Sortable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(Constant.KendoDefaultPageSize)
.Read(read => read.Action("GetDataBySearch", "Model1", new { area = "" }))
.ServerOperation(true)
.Model(Model1 => Model1.Id(x => x.Model1ID))
)
.Resizable(resize => resize.Columns(true))
)
//this is for secounf grid on same page
@(Html.Kendo().Grid<Alliant.Domain.Model2>()
.Name("Model2Grid")
.NoRecords("No record found.")
.Columns(columns =>
{
columns.Bound(e => e.Name).Width("10%");
columns.Bound(e => e.Description).Width("10%").Filterable(false);
})
.Pageable(p =>
{
p.PreviousNext(false);
p.Numeric(false);
})
.Sortable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(Constant.KendoDefaultPageSize)
.Read(read => read.Action("GetData2BySearch", "Model2", new { area = "" }))
.ServerOperation(true)
.Model(Model2 => Model2.Id(x => x.Model2ID))
)
.Resizable(resize => resize.Columns(true))
)
嗨@Arpit 我也面临同样的问题,
某个时间先request
先完成然后在另一个网格中的数据映射。
请检查以下解决方案
- 首先你需要在两个网格中设置
AutoBind(false)
。仅供参考 - Click Me
将以下 jquery 代码添加到您的页面并检查。
$(document).ready(function(){
var Model1Grid= $("#Model1Grid").data("kendoGrid");
var Model2Grid= $("#Model2Grid").data("kendoGrid");
Model1Grid.dataSource.read().then(function(){
Model2Grid.dataSource.read();
});
});