先看效果:
官方的弹出框 官方文档el-dialog按照官方文档区写就好了,我这里就不展示“表格”和“弹出框表单”的代码了,只留下事件的代码块。
点击“编辑”时,是将行数据赋值给“编辑表单”this.editForm = Object.assign({}, row)
,这样就会把行数据在“编辑”中展示出来。注意:点击“编辑”事件时,加上this.dialogEditFormVisible=true
,默认时,其为false
,这样“弹出框”弹出时也携带着相对应的数据,修改完,点击“确认提交”就ok了。有点地方是不需要更改的,这里我加了disabled
,加了它表示此处禁用(无法修改:无法修改的数据是不能变动了,比如:表里的“用户编号”、“用户账号”等是后端系统自动生成了,只可以查看,但修改可能会带来数据混乱的效果,也是保护了数据)。
对你有帮助请留下你的足迹
//触发编辑OK
handleEdit(row){
this.dialogEditFormVisible=true
this.editForm = Object.assign({}, row)
// console.log(row)
},
//编辑事件ok
handleUpdate(index,row){
const params = {
name:this.editForm.label,
usercode:this.editForm.usercode,
username:this.editForm.username,
phone_num:this.editForm.phone_num,
wechat_num:this.editForm.wechat_num,
sub_org_id:this.editForm.sub_org_id, //如何获取id??
sub_org_name:this.editForm.sub_org_name, //所属机构
role_type:this.editForm.role_type, //角色类型
role_name:this.editForm.role_name, //角色
email:this.editForm.email,
manage_org:this.editForm.manage_org, //????????
manage_org_name:this.editForm.manage_org_name, //管理机构
}
const id = this.editForm.id
this.$http.put('/xxx/xxxx/xxxxxx/'+ id +'/',params).then((res) => {
if(res.status === 200){
this.$message.success('修改成功')
// this.tableDisplay() //重新加载展示框
// this.reload() //刷新当前页面
this.dialogEditFormVisible = false
}else{
this.$message.warning('修改失败,请重新点击“编辑”')
}
}).catch(() => {
this.$message.danger('请求失败')
})
},
这个是弹出框编辑,行内编辑会在后面写出来。