element ui表单邮箱和密码验证

邮箱验证

表单

<el-form ref="ValidateForm"  :model="Form" :rules="rules">

	<el-form-item prop="email">
		<el-input v-model="Form.email" placeholder="邮箱" clearable class="input-ui">
		   <template #prefix>
		       <svg-icon icon-class="message" />
		   </template>
		</el-input>
	</el-form-item>
		  
		  <el-button @click="submitForm('ValidateForm')" :loading="loading">提交</el-button>
		  
</el-form>

在Vue中,我们不用获取dom节点,元素绑定ref之后,直接通过this.$refs即可调用,这样可以减少获取dom节点的消耗。

提交验证

export default{
	data(){
		return{
			Form:{
				email:''
			},
			rules: {
			    email: [
					{ required: true, message: '请输入邮箱', trigger: 'blur' },
			        { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' },
					{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }
			    ],
			},
			loading:false
		}
	},
	methods:{
		// 提交表单
		submitForm(ValidateForm) {
			
			this.$refs[ValidateForm].validate((valid) => {
			  if (valid) {
				
				console.log('submit!')
				this.loading = true
				setTimeout(()=>{
					this.loading = false
				},1500)
			  } else {
				console.log('error submit!!');
				return false;
			  }
			})
			
		},
	}
}

在这里插入图片描述

密码验证

表单

<el-form-item label="新密码" prop="password" label-width="85px">
        <el-input v-model="Form.password" placeholder="请输入新密码" type="password" clearable  />
</el-form-item>
			
<el-form-item label="确认密码" prop="passwordConfirm" label-width="85px">
         <el-input v-model="Form.passwordConfirm" placeholder="请输入确认密码" type="password" clearable  />
</el-form-item>

设置label-width宽度是为了标题长度一样达到美观效果

验证

rules: {
		password: [
			{ required: true, message: '请输入新密码', trigger: 'blur' },
			{ min: 6, max: 20, message: '长度在 6 到 20 个字符', trigger: 'blur' }
		],
		passwordConfirm: [
			{ required: true, trigger: 'blur', message: '确认密码不能为空' },
			{
				validator: (rules, value, callback) => {
					  if (value !== this.Form.password) callback(new Error('确认密码与新密码不一致'))
					  callback()
				}, trigger: 'blur'
			}
		]	
},

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Element UI是一个基于Vue.js的组件库,提供了丰富的UI组件和交互效果。在Element UI中,的输入验证是非常重要的一部分。 要实现Element UI输入验证,可以通过使用组件提供的规则属性来进行设置。我们可以通过定义各种校验规则,如required(必填)、min(最小输入长度)、max(最大输入长度)、email(邮箱格式)、pattern(自定义正则达式)等来实现输入验证。 脱离输入验证,意味着我们不再使用Element UI提供的组件的规则属性来实现验证。在这种情况下,我们需要自己编写逻辑代码来验证用户的输入。 可以通过监听的提交事件,在提交前对用户的输入进行验证。例如,可以使用JavaScript的正则达式来验证输入的格式是否符合要求。如果验证不通过,可以阻止的提交,给出相应的提示信息。 另一种方法是使用自定义指令来实现验证。在这种情况下,我们可以通过在输入框上应用自定义指令,在指令中编写验证的逻辑。自定义指令可以监听元素的事件,如输入、失去焦点等,并在相应事件发生时进行验证。 总的来说,虽然Element UI提供了方便的验证规则属性,但是我们也可以通过编写逻辑代码或自定义指令来实现脱离输入验证。通过这种方式,我们可以实现更加灵活和个性化的验证方式。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值