vue+elementUI表格某一行修改局部刷新实现

log:

使用elementUI表格,想修改某一行数据然后不想全量刷新,只想刷新当前修改的行内容

实现过程:

表格操作列代码:

1.主要是获取下标和行内容:scope.$index,scope.row

<el-table-column width="200" label="操作" prop="datafile" fixed="right">

          <template slot-scope="scope">
            <el-button
              @click.native.prevent="openTopic(scope.$index,scope.row)"
              type="text"
              size="small"
            >
              修改
            </el-button>
          </template>
</el-table-column>

2.点击修改会弹出一个框,实现代码:

data() {
    return {

      table_row : "",
      table_index:"",
      form: {
        id: "",
        name:"",
        ......
    },  
methods: {
    openTopic(index,row) {
      //打开dialog编辑框
      this.dialogFormupdate = true;
      //获取到的行内容放到表单里
      this.form = row;
      //重新存一份行内容
      this.table_row = row;
      //下标存起来
      this.table_index=index;

    },
}

3.再弹框修改完内容后提交代码:

页面部分:
<div slot="footer" class="dialog-footer">
          <el-button @click="dialogFormupdate = false">取 消</el-button>
          <el-button type="primary" @click="updateUser()">更 新</el-button>
</div>



js部分:
updateUser() {
      this.$axios.put("/fzyh/update/xs/yh", this.form).then((res) => {
        if (res.status == 200) {
          this.dialogFormupdate = false;
          console.log(this.table_index, this.table_row)

          if (this.form[this.table_index] !=this.table_row[this.table_index]){
              this.$set(this.form, this.table_index, this.table_row);
              this.table_index="";
              this.table_row="";
              this.form={};
            };
          this.$message.success("修改成功!");
        } else {
          this.dialogFormupdate = false;
          this.$message.error("新增失败,失败原因:", res.data);
        }
      });
    },

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 Vue 中使用 ElementUI 表格搜索,你可以使用两种方法: 1. 使用 ElementUIel-input 组件来实现搜索功能 在表格上方添加一个输入框,用户可以在其中输入搜索关键字,然后使用 JavaScript 过滤表格数据并更新表格。 HTML: ``` <template> <div> <el-input v-model="searchText" placeholder="请输入搜索关键字"></el-input> <el-table :data="tableData.filter(item => item.name.includes(searchText))"> <el-table-column prop="name" label="姓名"></el-table-column> <el-table-column prop="age" label="年龄"></el-table-column> </el-table> </div> </template> ``` JavaScript: ``` export default { data() { return { tableData: [ { name: '张三', age: 18 }, { name: '李四', age: 20 }, { name: '王五', age: 22 } ], searchText: '' }; } }; ``` 2. 使用 ElementUIel-form 组件来实现搜索功能 这种方法可以将搜索关键字与其他筛选条件一起提交到后端进处理,然后根据后端返回的数据来更新表格。 HTML: ``` <template> <div> <el-form :inline="true" :model="form"> <el-form-item label="姓名"> <el-input v-model="form.name"></el-input> </el-form-item> <el-form-item label="年龄"> <el-input v-model="form.age"></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="submitForm">搜索</el-button> </el-form-item> </el-form> <el-table :data="tableData"> <el-table-column prop="name" label="姓名"></el-table-column> <el-table-column prop="age" label="年龄"></el-table-column> </el-table> </div> </template> ``` JavaScript: ``` export default { data() { return { tableData: [], form: { name: '', age: '' } }; }, methods: { submitForm() { // 向后端提交搜索条件,并获取返回数据更新表格 } } }; ``` 以上是两种使用 ElementUI 表格搜索的方法,你可以根据自己的需求选择适合自己的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值