el-form表单验证

        <el-form
          label-width="100px"
          class="form"
          label-position="left"
          :model="ruleform"
          :rules="rules"
          ref="tableForm"
        >
          <el-form-item label="旧密码" prop="oldPwd">
            <el-input
              v-model.trim="ruleform.oldPwd"
              show-password
              clearable
              name="oldPwd"
              placeholder="请输入旧密码"
              @blur="formChange"
              @keyup.native="
                ruleform.oldPwd = ruleform.oldPwd.replace(
                  /[^\a-\z\A-\Z0-9]/g,
                  ''
                )
              "
            ></el-input>
          </el-form-item>
          <el-form-item label="新密码" prop="newPwd">
            <el-input
              v-model="ruleform.newPwd"
              show-password
              clearable
              minlength="6"
              maxlength="20"
              name="newPwd"
              @blur="formChange"
              @keyup.native="
                ruleform.newPwd = ruleform.newPwd.replace(
                  /[^\a-\z\A-\Z0-9]/g,
                  ''
                )
              "
              placeholder="请输入新密码"
            ></el-input>
          </el-form-</
### element UI el-form 表单验证右侧 Icon 显示方法 为了在 `el-form` 的表单验证过程中显示右侧图标,可以利用自定义插槽功能来实现这一需求。通过设置 `el-form-item` 组件中的 `slot="error"` 来插入特定的错误提示图标或成功状态图标。 当配置项中设置了 `show-message=false` 后,可以通过监听输入框的状态变化来自行控制图标的展示逻辑。下面是一个具体的例子: ```html <template> <div class="demo"> <el-form :model="ruleForm" status-icon ref="ruleForm" label-width="100px" class="demo-ruleForm"> <!-- 用户名 --> <el-form-item prop="name" :rules="[ {required: true, message: () => $t('name is required'), trigger: 'blur'} ]"> <el-input v-model="ruleForm.name"></el-input> <i slot="suffix" :class="{'el-icon-error': !isValid && hasBeenValidated,'el-icon-success': isValid}"></i> </el-form-item> <el-button type="primary" @click="submitForm('ruleForm')">Submit</el-button> </el-form> </div> </template> <script> export default { data() { return { ruleForm: { name: '' }, isValid: null, hasBeenValidated: false }; }, methods: { submitForm(formName) { this.$refs[formName].validate((valid) => { if (valid) { alert('submit!'); } else { console.log('error submit!!'); this.hasBeenValidated = true; return false; } }); } } }; </script> ``` 在此示例中,每当提交按钮被点击时会触发 `submitForm()` 方法并执行验证操作;如果验证失败,则将 `hasBeenValidated` 设置为 `true` 并根据实际验证情况更新 `isValid` 属性值,从而动态调整右边图标的样式[^1]。 对于更复杂的场景比如嵌套于表格内的表单项,同样可以在对应的列模板里加入类似的结构以达到相同的效果[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

都挺好,刚刚好

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值