vue3点击表格某个单元格文本就切换成输入框,其他单元格不变化

html 复制代码
<el-table :data="data.tableData" height="60vh" border scrollbar-aways-on>
        <el-table-column label="序号" type="index" width="80" fixed />
        <el-table-column label="操作" width="120" fixed>
            <template #default="{ row }">
                <el-button type="danger" text @click="deleteBtn(row)" :disabled="row.status">删除</el-button>
                <el-button style="color: #3592FF" text @click="enableBtn(row)">{{ row.status ? '停用' : '启用' }}</el-button>
            </template>
        </el-table-column>
        <el-table-column prop="status" label="状态" width="120" />
        <el-table-column prop="phone" label="手机号" />
        <el-table-column prop="kanno" label="操作人" />
        <el-table-column prop="kanno" label="操作时间" />
        <el-table-column prop="kanno" label="创建人" />
        <el-table-column prop="createTime" label="创建时间" />
        <el-table-column label="姓名">
            <template #default="scope">
                <template v-if="scope.cellIndex == cellIndex && scope.$index == index">
                    <el-input v-model="scope.row.status" @blur="saveCell" />
                </template>
                <template v-else>
                    <div @click="editCell(scope, scope.$index)">{{ scope.row.status }}</div>
                </template>
            </template>
        </el-table-column>
    </el-table>
javascript 复制代码
const cellIndex = ref('')
const index = ref('')

function editCell(row, ind) {
    cellIndex.value = row.cellIndex
    index.value = ind
}
function saveCell() {
    cellIndex.value = ''
    index.value = ''
}

效果如下

点击第一行的文本

点击第二行文本

相关推荐
小飞侠在吗1 小时前
vue props
前端·javascript·vue.js
大怪v2 小时前
【Virtual World 03】上帝之手
前端·javascript
用户841794814563 小时前
vxe-gantt 甘特图实现产品进度列表,自定义任务条样式和提示信息
vue.js
招来红月4 小时前
记录JS 实用API
javascript
霍夫曼4 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
VX:Fegn08954 小时前
计算机毕业设计|基于Java人力资源管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端·课程设计
꒰ঌ小武໒꒱5 小时前
文件上传全维度知识体系:从基础原理到高级优化
javascript·node.js
老华带你飞5 小时前
健身房|基于springboot + vue健身房管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
JIngJaneIL5 小时前
基于Java酒店预约系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
用户47949283569156 小时前
JavaScript 今天30 岁了,但连自己的名字都不属于自己
javascript