【问题标题】:Slickgrid: value entered in a cell disappears after moving out of cellSlickgrid:在单元格中输入的值在移出单元格后消失
【发布时间】:2020-08-12 16:35:49
【问题描述】:

在 Slickgrid 单元格中,我单击并输入一个值。一旦我使用鼠标单击移出此单元格,输入的值就会消失。但是,如果我在单元格中输入值并制表符,则该值将保留在单元格中。我想知道这是否应该手动处理。

我正在调用的 OnClick 事件

grid.updateRow(grid.getDataItem(args.row));
grid.invalidate();
grid.render();

谢谢, 阿莎

【问题讨论】:

    标签: javascript slickgrid


    【解决方案1】:

    你做错了,updateRow() 参数是网格中的行索引,但是你传递了一个项目对象,所以这不起作用,如果我没记错的话updateRow 仅用于重新渲染或刷新特定的行索引,它不是为了更新数据,而是为了渲染目的(可能命名混乱)。

    我个人只使用 SlickGrid DataView 并且调用更新项目的函数是不同的,你可以在另一个 Stack Overflow 答案Change slickgrid cell data after edit 中看到如何做到这一点

    如果您使用的是网格对象,正如我之前引用的另一个 SO 答案中所写,那么它将是

    grid.invalidateRow(args.row);
    data[args.row][grid.getColumns()[args.cell].field] = a.msg;
    grid.render();
    

    就我个人而言,我总是使用 SlickGrid DataView,因为它对用户更加友好,并且具有更多好处,例如数据分组和许多其他功能。再次看看我在上一段中写的另一个 SO 答案,这是正确的方法

    【讨论】:

    • 我做了这些改变,但行为是一样的。
    • mleibman.github.io/SlickGrid/examples/… 就像这样,当您选择或移动到任何其他单元格时,您进行更改的单元格包含该值。这在我的情况下没有发生
    • 我什至默认了一个单元格的值,当我编辑这个并移出这个单元格时,这个值消失了,如果我遗漏了什么,请提出建议。
    • 只是检查您正在使用github.com/6pac/SlickGrid/wiki,或@ghiscoding 的回购之一,mleibman 回购已死。那个 repo 会有很多问题。
    猜你喜欢
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-13
    • 1970-01-01
    • 2015-07-17
    • 1970-01-01
    相关资源
    最近更新 更多