前言

使用Element中的form表单检查规则,编辑窗口中填充数据,新建时需清空

需要注意一点:

方法:resetField,不是把表单属性都清空,而是重置为初始值

比如form在加载渲染之前,属性已经被赋值(初始值),所以再次使用resetField不会清空表单数据,而显示初始值

可以理解为重置功能

问题

将表单数据进行清空后,出现表单rules规则自动验证提示

点击编辑,再操作新增,触发了select的change规则

经了解:

  • 可以使用v-if动态销毁,消耗性能
  • 使用官网介绍的clearValidate方法(推荐)

有网友遇到说:clearValidate对change规则不生效

经测试,更新版本后是可以解决change规则自动触发的问题

//清除表单内所有规则检测提示
this.$refs['ruleForm'].clearValidate(); 
//可清除特定属性
this.$refs['ruleForm'].clearValidate('name'); 

如有需要记得使用nextTick方法,在弹框展示出来之前,JS执行完了所以没生效,此方法会在DOM更新后的回调中执行

 this.newVersionBool = true;
 // 清除自动触发的表单验证
 this.$nextTick(()=>{
    this.$refs['ruleForm'].clearValidate();
 })

 保存,操作正常!

GitHub 加速计划 / eleme / element
54.06 K
14.63 K
下载
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:3 个月前 )
c345bb45 7 个月前
a07f3a59 * Update transition.md * Update table.md * Update transition.md * Update table.md * Update transition.md * Update table.md * Update table.md * Update transition.md * Update popover.md 7 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐