Skip to content

jvxetable的checkbox自动更新 #84

Closed
@eyuan

Description

@eyuan
版本号:

v.1.0.0-beta

问题描述:

使用editClose事件响应单元格编辑, @edit-closed="handleEditClosed",下拉、文本输入都可以,但checkbox不行。

截图&代码:

image

 { key: 'enabled', title: '启用', width: 60, type: JVxeTypes.checkbox,customValue: ['是','否'] }, 
  { key: 'sampleGroupType', title: '类型', width: 120, type: JVxeTypes.select,allowSearch:true,dictCode:'lims_sample_group_template_type' },
function handleEditClosed(event) {
  let { $table, row, column } = event
  let field = column.property
  // 判断单元格值是否被修改
  if ($table.isUpdateByRow(row, field)) {
    // 校验当前行
    $table.validate(row).then((errMap) => {
      // 校验通过
      if (!errMap) { 
        // let hideLoading = createMessage.loading(`正在保存"${column.title}"`, 0); 
        saveOrUpdate(row,true).then(res => {
          // createMessage.success(`"${column.title}"保存成功!`)
          // 局部更新单元格为已保存状态
          $table.reloadRow(row, null, field)
        }).finally(() => {
          // hideLoading()
        })
      }
    })
  }
}

Activity

eyuan

eyuan commented on May 27, 2022

@eyuan
Author

测试发现没有触发editClose,而是和不带input的列的点击一样,触发了click,因为配置了clickSelect,所以进一步触发了selectRowChange

zhangdaiscott

zhangdaiscott commented on May 27, 2022

@zhangdaiscott
Member

jl

sjlei

sjlei commented on May 31, 2022

@sjlei

editClose 事件只有当组件从编辑状态切换成文本状态时才会触发,因为 checkbox 等组件一直处于编辑状态的,所以无法触发该事件。
对于此类组件可以使用 valueChange 事件来处理。
示例页面已更新,将在下版本发布。

image
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @eyuan@zhangdaiscott@sjlei

        Issue actions

          jvxetable的checkbox自动更新 · Issue #84 · jeecgboot/JeecgBoot-vue3