【问题标题】:Kendo UI For Angular2 - Grid Row SelectAngular2 的 Kendo UI - 网格行选择
【发布时间】:2016-10-14 20:55:51
【问题描述】:

我有一个有效的 <kendo-grid> 组件,在 34 行(大约 4 页)的数据集上有 10 个可见行。排序和选择按预期工作。

<kendo-grid [data]="gridView" 
                    [pageSize]="pageSize" 
                    [skip]="skip" 
                    [pageable]="true" 
                    [height]="300" 
                    (pageChange)="pageChange($event)"
                    [sortable]="{ mode: 'single' }" 
                    [sort]="sort" 
                    [selectable]="true" 
                    (sortChange)="sortChange($event)" 
                    (selectionChange)="selectionChange($event)">

假设我选择了第二行。然后我对表格进行排序,选择保留在第二行,但当然它突出显示了不同的记录。它总是选择网格上的第二行,这当然是我想要的。

如何清除我的(sortChange) 事件中的选定行,以便至少不会向用户显示他们已经选择的不同选择。我对所选行的某种数据绑定属性持开放态度,我可以将其设置为 null 或 gridView 上的某些属性,甚至可以在 @ViewChild 内四处寻找。

任何帮助将不胜感激。

普通排序

升序排序

降序排序

【问题讨论】:

    标签: kendo-ui-angular2


    【解决方案1】:

    我在这里也有类似的问题:Select grid row item from code

    基本上,您还需要在没有用户交互的情况下从代码中选择网格行项目,目前 Kendo UI Angular2 控件的当前 beta 版本不支持这一点。

    【讨论】:

      【解决方案2】:

      在我的应用程序中,我求助于在我想要选择的行上触发点击事件。 :/

      如果我有“向上”和“向下”按钮来重新排列网格并希望在切换项目时保持我的选择,我会这样做。

      var grid = document.getElementById('myGrid');
      var rows = grid.getElementsByTagName('tr');
      rows[idx].click(); // add one to the desired row index to skip the header row
      

      这是这个场景的一个(草率的,最小的)Plunkr:http://plnkr.co/edit/09dlqdl0Xchoy0e5zKRq

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-09-07
        • 2013-06-20
        • 1970-01-01
        • 1970-01-01
        • 2017-12-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多