在空的剑道网格上排序显示旧数据
Posted
技术标签:
【中文标题】在空的剑道网格上排序显示旧数据【英文标题】:Sorting on empty kendo grid shows old data 【发布时间】:2019-12-27 11:55:30 【问题描述】:我有一个下拉列表(有 2 个值 - 员工和部门)和两个 kendogrids(emp 网格和部门网格),在更改下拉列表时我启用/禁用基于下拉值的网格并清除两个网格的数据源,当我在下拉列表中选择员工并根据给出结果的名称对员工进行排序,当我将下拉值更改为“部门”时,它会禁用员工网格并在员工网格中显示“未找到数据”,但是当我单击 EmpName 列时,我仍然得到以前的结果。我在下面添加了下拉更改示例代码。
var ddlvalue = $("#drpmodule").data("kendoDropDownList").text();
$("#EmpGrid").data("kendoGrid").dataSource.data([]); //Clear EmpGrid DataSource
$("#DeptGrid").data("kendoGrid").dataSource.data([]); //Clear DeptGrid DataSource
if (module == 'Employee')
$('#DeptGrid').addClass('k-state-disabled');
$('#EmpGrid').removeClass('k-state-disabled');
else if (module == 'Department')
$('#EmpGrid').addClass('k-state-disabled'); //shows no data found in EmpGrid, but clicking on column header gives results
$('#DeptGrid').removeClass('k-state-disabled');
else
$('#EmpGrid').removeClass('k-state-disabled');
$('#DeptGrid').removeClass('k-state-disabled');
我不明白为什么即使在“未找到数据”记录之后(在更改下拉列表中),员工网格仍显示以前/旧数据。
【问题讨论】:
【参考方案1】:很高兴看到数据源是如何配置的。
事实上,我可以假设当您进行过滤时,数据源正在获取数据。它将解释为什么您会看到有关过滤空网格的数据。
也许隐藏禁用的网格可能是一个解决方案:$('#EmpGrid').hide();
然后再次显示$('#EmpGrid').show();
通过隐藏/显示网格,您不再需要清空网格。
【讨论】:
刚刚通过***.com/questions/17917962/…了解了 $("#EmpGrid").data("kendoGrid").dataSource.data([]);有问题,它会在排序/过滤的情况下显示旧数据,所以我创建了一个新的空数据源并在下拉更改时将其分配给网格,我再次在单击搜索按钮时将旧数据源分配给网格。感谢帮助顺便说一句:-)以上是关于在空的剑道网格上排序显示旧数据的主要内容,如果未能解决你的问题,请参考以下文章