【el-form】记一例好用的el-input输入框回车调接口和el-button按钮防重点击

前言:
今天在工作过程中发现了一个在el-form中比较好用的按钮防重点击和输入框回车调接口刷新的方法,在此记录一下

javascript 复制代码
<template>
  <el-form @submit.prevent="onSubmit">
    <el-form-item label="名称">
      <el-input v-model="formData.name" @keyup.enter="onSubmit"></el-input>
    </el-form-item>
    <el-form-item label="年龄">
      <el-input v-model="formData.age"></el-input>
    </el-form-item>
    <el-form-item>
      <el-button type="primary" native-type="submit" :loading="loading">提交</el-button>
    </el-form-item>
  </el-form>
</template>

<script>
export default {
  data() {
    return {
      formData: {
        name: '',
        age: ''
      },
      loading: false
    };
  },
  methods: {
    onSubmit() {
      // 表单提交逻辑
      this.loading = true
      console.log('表单提交:', this.formData);
      // 这里可以添加表单验证、数据处理等逻辑,表单提交成功后
      this.loading = false
    }
  }
};
</script>

<style scoped>
/* 可以添加一些样式 */
.el-form {
  max-width: 400px;
  margin: 0 auto;
}
</style>

/** 
1、@keyup.enter可以用在el-input输入框中,也可以用在el-form表单中,比如查询的时候就可以直接把@keyup.enter放在el-from表单中<el-form @keyup.enter="refreshList()">,这样每个查询条件的输入框都可以回车调用查询接口刷新页面数据了。 
2、@keyup.enter 事件修饰符
作用:当用户在指定的元素上按下 Enter 键时触发事件。
使用场景:通常用于表单输入框中,当用户按下 Enter 键时执行某个操作,比如提交表单或执行搜索。
3、@submit.prevent 事件修饰符
作用:在表单提交时阻止默认的提交行为,并触发指定的方法。
使用场景:通常用于表单提交时,防止表单页面刷新或跳转,并在提交前进行一些验证或处理。
4、这两个事件修饰符经常一起使用,以实现更灵活的表单提交和交互逻辑。
**/

以上是我遇到的一种方式,如果大家有更好的方法欢迎评论区交流。

相关推荐
2501_9445264216 分钟前
Flutter for OpenHarmony 万能游戏库App实战 - 关于页面实现
android·java·开发语言·javascript·python·flutter·游戏
壹号机长26 分钟前
canvas烟花特效各种前端框架都可以使用H5,vue,react,
vue.js·react.js·前端框架
咸鱼2.027 分钟前
【java入门到放弃】VUE部分知识点
java·javascript·vue.js
web小白成长日记1 小时前
Vue3中如何优雅实现支持多绑定变量和修饰符的双向绑定组件?姜姜好
前端·javascript·vue.js
十六年开源服务商1 小时前
WordPress在线聊天系统推荐
大数据·javascript·html
喵喵喵小鱼2 小时前
arcgis JavaScript api实现同时展示多个撒点气泡
开发语言·javascript·arcgis
谢尔登2 小时前
Vue3架构设计——调度系统
前端·javascript·vue.js
Kratzdisteln2 小时前
【1902】0121-1 Dify工作流节点详细配置(方案B最终版)
java·前端·javascript
霍理迪2 小时前
js数据类型与运算符
开发语言·前端·javascript
Hi_kenyon2 小时前
小白理解main.js
前端·javascript·vue.js