element 表格行内进行编辑

<template>
<div class="process_manage">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>审批流程</span>
<el-button style="float: right; padding: 3px 0" type="text" @click="seach_onoff = !seach_onoff">搜索按钮</el-button>
</div>
<el-row :gutter="10" :class="seach_onoff ? 'lz-seach-animation' : 'lz-seach'">
<!-- <el-col :span="5" class="lz-el-col"><el-input v-model="seach_val" @input="seachValue" placeholder="请输入内容"></el-input></el-col>
<el-col :span="5" class="lz-el-col"><el-button type="primary" size="small" icon="el-icon-search" plain @click="seachValue">搜索</el-button></el-col> -->
</el-row>
<el-button type="primary" icon="el-icon-circle-plus-outline" @click="add_approver">添加审批流程</el-button>
<el-table :data="processData" border highlight-current-row :class="EditOnoff ? 'tb-edit' : 'tb-edit2'" @row-click="handleCurrentChange">
<el-table-column fixed prop="createDate" label="创建日期" width="150" :show-overflow-tooltip="true"></el-table-column>
<el-table-column label="流程名称" width="150" :show-overflow-tooltip="true">
<template scope="scope">
<el-input size="small" v-model="EditBefore.name" placeholder="流程名称"></el-input>
<span>{{ scope.row.name }}</span>
</template>
</el-table-column>
<el-table-column label="流程发起人" width="150" :show-overflow-tooltip="true">
<template scope="scope">
<el-input size="small" v-model="EditBefore.userName" placeholder="流程发起人" disabled></el-input>
<span>{{ scope.row.userName }}</span>
</template>
</el-table-column>
<el-table-column label="流程状态" width="150">
<template scope="scope">
<el-switch v-model="EditBefore.status" active-text="启用" inactive-text="禁用" active-value="0" inactive-value="1"></el-switch>
<span>{{ scope.row.status == 1 ? '禁用' : '启用' }}</span>
</template>
</el-table-column>
<el-table-column label="流程简介" :show-overflow-tooltip="true">
<template scope="scope">
<el-input size="small" v-model="EditBefore.remark" placeholder="流程简介"></el-input>
<span>{{ scope.row.remark }}</span>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" width="240">
<template slot-scope="scope">
<el-button type="text" size="small" @click="handleComplete" v-if="scope.row.id == EditBefore.id && EditOnoff">完成</el-button>
<el-button type="text" size="small" @click.stop="EditOnoff = false" v-if="scope.row.id == EditBefore.id && EditOnoff">取消</el-button>
<el-button type="text" size="small" @click="handleEdit(scope.$index, scope.row)" v-else="">编辑</el-button>
<el-button type="text" size="small" @click.stop="handleDelete(scope.$index, scope.row)">删除</el-button>
<el-button type="text" size="small" @click.stop="handleDelete(scope.$index, scope.row)">设置</el-button>
</template>
</el-table-column>
</el-table>
<!-- //分页 -->
<el-pagination
style="margin: 20px 0;float: right;"
@current-change="pageleCurrentChange"
:current-page="currentPage"
:page-sizes="[10]"
:page-size="10"
layout="total, sizes, prev, pager, next, jumper"
:total="count"
></el-pagination>
</el-card>
</div>
</template> <script>
import { mapActions, mapGetters } from 'vuex';
export default {
name: 'process_manage',
computed: {
...mapGetters(['api'])
},
data() {
return {
seach_onoff: false, //搜索显示
seach_val: '', //搜索类容
currentPage: 1, //分页中当前第几页
count: 0, //分页数据总条数
processData: [
//流程数据
{
pmUserName: ''
}
],
//编辑
EditOnoff: false, //是否可编辑
EditBefore: {}, //编辑之前的数据
};
},
mounted() {
//获取登录用户的组织审批流程
this.getProcessData();
},
methods: {
//获取当前公司的所有审批流程
getProcessData() {
let that = this;
let req = {
pageNum: that.currentPage,
isPage: true
};
that.GLOBAL.doPost(that.api.GLOBAL_flow_getByOwner, req, function(res) {
if (res.code == 200) {
that.processData = res.data.list;
that.count = res.data.total;
}
});
},
//点击行
handleCurrentChange(row, event, column) {
let that = this;
console.log(row.id, that.EditBefore.id);
if (row.id == that.EditBefore.id) {
that.EditOnoff = true;
} else {
that.EditOnoff = false;
}
},
//编辑
handleEdit(index, row) {
let that = this;
console.log(row);
that.EditOnoff = true;
//复制编辑前的数据
that.EditBefore = { ...row };
},
//删除
handleDelete(index, row){
this.$confirm('是否删除此‘'+row.name+'’流程', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => { }).catch(() => {
});
},
//完成
handleComplete() {
let that = this;
that.EditOnoff = true;
console.log(that.EditBefore);
that.$confirm('是否完成此次编辑', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
that.GLOBAL.doPost(that.api.GLOBAL_user_update, JSON.stringify(that.EditBefore), function(res) {
console.log(res);
if (res.code == 200) {
that.$message({ message: res.msg, type: 'success' });
that.EditOnoff = false;
//获取人员列表
that.getByOrg();
}
});
})
.catch(() => {});
},
//添加审批人
add_approver() {
this.$router.push({name:'processSetting',path:'/processSetting'})
},
//分页
pageleCurrentChange(val) {
// console.log(`当前页: ${val}`);
let that = this;
that.currentPage = val;
//获取当前公司的所有审批流程
that.getProcessData();
}
}
};
</script> <style scoped="scoped" lang="scss">
.lz-el-col {
width: 200px;
margin-bottom: 10px;
}
.el-table .lz-fontsize-weidth {
font-weight: bold;
}
.el-table .lz-fontsize {
font-weight: normal;
color: #888;
}
//搜索动画显示
.lz-seach {
max-height: 0px;
margin-bottom: 0px;
overflow: hidden;
}
.lz-seach-animation {
animation: lzmover 0.6s ease-in-out forwards;
display: block;
overflow: hidden;
} //表格的可编辑
.tb-edit .el-input {
display: none;
}
.tb-edit .el-select {
display: none;
}
.tb-edit .el-switch {
display: none;
}
.tb-edit .current-row .el-input {
display: block;
}
.tb-edit .current-row .el-select {
display: block;
}
.tb-edit .current-row .el-switch {
display: block;
}
.tb-edit .current-row .el-input + span {
display: none;
}
.tb-edit .current-row .el-switch + span {
display: none;
}
.tb-edit .current-row .el-select + span {
display: none;
}
//取消
.tb-edit2 .current-row .el-input + span {
display: block;
}
.tb-edit2 .el-input {
display: none;
}
.tb-edit2 .el-select {
display: none;
}
.tb-edit2 .el-switch {
display: none;
}
@keyframes lzmover {
0% {
height: 0px;
opacity: 0;
margin-bottom: 0px;
}
100% {
height: 100%;
opacity: 1;
margin-bottom: 10px;
}
} </style>
element 表格行内进行编辑的更多相关文章
- AppBoxPro - 细粒度通用权限管理框架(可控制表格行内按钮)源码提供下载
特别声明: 提供的源代码已经包含了 AppBoxPro 的全部源代码,用 VS2012 打开项目后,直接 Ctrl+F5 可以运行起来(默认使用VS自带的LocalDB数据库). FineUIPro是 ...
- 编辑表格输入内容、根据input输入框输入数字动态生成表格行数、编辑表格内容提交传给后台数据处理
编辑表格输入内容.根据input输入框输入数字动态生成表格行数.编辑表格内容提交传给后台数据处理 记录自己学习做的东西,写的小demo,希望对大家也有帮助! 代码如下: <!DOCTYPE ht ...
- datatables表格行内编辑的实现
Datatables是一款jquery表格插件,它是一个高度灵活的工具,灵活就意味着很多功能需要自己去实现,比如说行内编辑功能. Datatables自己是没有行内编辑功能的,最简单的是通过modal ...
- vxe-table 可编辑表格 行内编辑以及验证 element-UI集成
<vxe-table border show-overflow ref="xTable" ----------------------------------------- ...
- bootstrap-table 数据表格行内修改
bootstrap-table 数据行内修改js中设置列的属性 editable : { type : 'text',//数据显示在文本框内 emptytext : "--",// ...
- VUE+Element UI实现简单的表格行内编辑效果
原理是通过Css控制绑定的输入控件与显示值,在选中行样式下对控件进行隐藏或显示 <!DOCTYPE html> <html> <head> <meta cha ...
- easyui,datagrid表格,行内可编辑
最近用到easyui,需要表格内编辑,但是我同一个页面有多个表格,把官方的代码修改了一下,如下: HTML代码 <table id="dg" class="easy ...
- 推荐一个好用的行内可编辑的table组件 vxe-table
项目中有一个需要用户点击table单元格可编辑的需求,由于博主用的是elementUI,element组件内实现可编辑,用过的小伙伴都知道,非常麻烦,后来博主在浏览组件的时候发现了 一款非常好用的ta ...
- easyui学习笔记3—在展开行内的增删改操作
这一篇介绍在一个展开行内进行的增删操作,如果一行很长有很多的数据,在一个展开行内进行编辑将更加方便. 1.先看引用的资源 <link rel="stylesheet" hre ...
随机推荐
- A Child's History of England.28
By such means, and by taxing and oppressing the English people in every possible way, the Red King b ...
- postgresql安装部署
一.下载安装: 1.下载: 官网下载地址:https://www.postgresql.org/download/linux/redhat/ 也可以用这个:https://www.enterprise ...
- 【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(二)-了解SD总线,命令的相关介绍
其他链接 [STM32]使用SDIO进行SD卡读写,包含文件管理FatFs(一)-初步认识SD卡 [STM32]使用SDIO进行SD卡读写,包含文件管理FatFs(二)-了解SD总线,命令的相关介绍 ...
- Oracle中常用的系统表
1.dba开头的表 dba_users 数据库用户信息 dba_segments 表段信息 dba_extents 数据区信息 dba_objects 数据库对象信息 dba_tablespaces ...
- Lottie 使用
原文:https://mp.weixin.qq.com/s?__biz=MzIxNjc0ODExMA==&mid=2247485033&idx=1&sn=54dd477b4c4 ...
- java加密方式
加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容.大体上分为双向加密和单向加密,而双向加密又分为对称加密和非对称加密(有些 ...
- jenkins之代码回滚
#:通过传参数方式 #:保存后就会看到这样 #;:我们在jenkins服务器写一个脚本 root@ubuntu:~# mkdir /root/script/web1 -pv mkdir: create ...
- D3基础入门四-事件处理
6.5.0版 .on("mouseover", function(e,d) e: {"isTrusted":true} 第二个参考才是数据,但这在不同的环境可能 ...
- Linux shell实现每天定时备份mysql数据库
每天定时备份mysql数据库任务,删除指定天数前的数据,保留指定天的数据: 需求: 1,每天4点备份mysql数据: 2,为节省空间,删除超过3个月的所有备份数据: 3,删除超过7天的备份数据,保留3 ...
- 『学了就忘』Linux启动引导与修复 — 72、Linux系统的修复模式(单用户模式)
目录 1.单用户模式常见的错误修复 2.通过单用户模式修改系统密码 (1)进入grub启动引导程序中 (2)编辑相应的系统启动内容 (3)编辑grub配置文件内容 (4)启动系统 (5)修改root用 ...