中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue實現ElementUI Form表單校驗功能

發布時間:2021-08-24 15:18:00 來源:億速云 閱讀:307 作者:chen 欄目:開發技術

本篇內容介紹了“Vue實現ElementUI Form表單校驗功能”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

以下是form的demo

el-form :model="dynamicValidateForm" ref="dynamicValidateForm" label-width="100px" class="demo-dynamic">
  <el-form-item
    prop="email"
    label="郵箱"
    :rules="[
      { required: true, message: '請輸入郵箱地址', trigger: 'blur' },
      { type: 'email', message: '請輸入正確的郵箱地址', trigger: ['blur', 'change'] }
    ]"
  >
    <el-input v-model="dynamicValidateForm.email"></el-input>
  </el-form-item>
  <el-form-item
    v-for="(domain, index) in dynamicValidateForm.domains"
    :label="'域名' + index"
    :key="domain.key"
    :prop="'domains.' + index + '.value'"
    :rules="{
      required: true, message: '域名不能為空', trigger: 'blur'
    }"
  >
    <el-input v-model="domain.value"></el-input><el-button @click.prevent="removeDomain(domain)">刪除</el-button>
  </el-form-item>
  <el-form-item>
    <el-button type="primary" @click="submitForm('dynamicValidateForm')">提交</el-button>
    <el-button @click="addDomain">新增域名</el-button>
    <el-button @click="resetForm('dynamicValidateForm')">重置</el-button>
  </el-form-item>
</el-form>
<script>
  export default {
    data() {
      return {
        dynamicValidateForm: {
          domains: [{
            value: ''
          }],
          email: ''
        }
      };
    },
    methods: {
      submitForm(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!');
            return false;
          }
        });
      },
      resetForm(formName) {
        this.$refs[formName].resetFields();
      },
      removeDomain(item) {
        var index = this.dynamicValidateForm.domains.indexOf(item)
        if (index !== -1) {
          this.dynamicValidateForm.domains.splice(index, 1)
        }
      },
      addDomain() {
        this.dynamicValidateForm.domains.push({
          value: '',
          key: Date.now()
        });
      }
    }
  }
</script>

Vue實現ElementUI Form表單校驗功能

首先對el-form標簽中的幾個關鍵屬性進行說明

  • ref: 當前表單的唯一標識

  • model: 表單綁定的對象

  • rules: 字段校驗規則

rules字段用來定義各個字段具體的校驗規則,用法請查閱開篇的demo示例,其中required標識字段是否必填,message為校驗提示語,trigger為單個校驗觸發方式;也可以通過validator字段自定義校驗規則,方法validateProductName中對商品名稱做了判空及長度校驗,需要注意的是所有的條件分支都要做callback處理,否則校驗可能會導致異常。

1、重置表單

調用表單重置方法this.$refs.dynamicValidateForm.resetFields()實現。

當然像datetimerange類型的日期控件是無法通過該方法進行重置,必須手動重置綁定的字段。

2、 清除校驗提示語

調用方法this.$refs.dynamicValidateForm.clearValidate()實現。

如果僅需要清除單個控件的提示語,只要把該控件對應的prop屬性值作為參數傳入即可。

還有另外一種方式就是在該控件對應的el-form-item標簽中增加ref屬性值,然后調用clearValidate方法。

“Vue實現ElementUI Form表單校驗功能”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

桃源县| 牟定县| 沐川县| 洛浦县| 贵溪市| 顺昌县| 新河县| 朝阳区| 阿克陶县| 陕西省| 兴文县| 沙洋县| 余干县| 阜新市| 留坝县| 方山县| 南溪县| 镇原县| 盐山县| 巴塘县| 凤冈县| 嵩明县| 井研县| 汉源县| 天全县| 荣成市| 舞阳县| 嘉禾县| 芜湖县| 绵阳市| 阳江市| 遂昌县| 灯塔市| 潼关县| 临海市| 民和| 彩票| 名山县| 克山县| 彭阳县| 屏南县|