首页 > 解决方案 > 在空的剑道网格上排序显示旧数据

问题描述

我有一个下拉列表(有 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');
                }

即使在“未找到数据”记录之后(更改下拉菜单),我也不明白为什么员工网格显示以前/旧数据。

标签: kendo-grid

解决方案


很高兴看到数据源是如何配置的。

因为它是我可以假设也许当您过滤时,数据源正在获取数据。它将解释为什么您会看到有关过滤空网格的数据。

也许隐藏禁用的网格可能是一个解决方案:$('#EmpGrid').hide();
然后再次显示它$('#EmpGrid').show();
通过隐藏/显示网格,您不再需要清空网格。


推荐阅读