Dojo Gridx 行中输入框排序问题解决方案

在 Dojo Gridx 中,如果行中存在可输入的输入框,点击列头排序时,输入框里的数据可能会错乱。这是因为排序操作会重新渲染行内容,导致输入框中的数据丢失。

解决方案一:禁用行排序

您可以使用 'canSort: false' 属性来禁用行排序,以避免重新渲染行时输入框中的数据错乱。您可以将此属性添加到列定义中。例如:

{
    id: 'columnName',
    field: 'fieldName',
    name: 'Column Name',
    canSort: false,
    // other column properties...
}

解决方案二:使用 grid.setStore() 方法更新数据

如果您需要启用排序,但仍要避免重新渲染行,您可以使用 grid.setStore(store, query, keepSelection) 方法。这个方法可以在不重新渲染行的情况下更新数据。例如:

 grid.setStore(newStore, null, true);

在这里,'newStore' 是您的新数据存储对象,'null' 是查询对象,'true' 表示保留所选内容。这将更新表格中的数据,而不会重新渲染行,从而避免输入框中的数据错乱。

Dojo Gridx 行中输入框排序问题解决方案

原文地址: https://www.cveoy.top/t/topic/ohMH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录