smart 表单校验

僤鯓⒐⒋嵵緔 提交于 2020-02-28 03:27:58

smart 表单校验

对表单进行校验

步骤1 配置表单项内容

form:{
//模块基础设置表单对象
	basicSetup:{ 
		modelName:'',
		modelType:'',
	}
}

步骤2 配置表单校验规则,即哪些表单项需要检验,需要何种校验

// 表单验证
validate : {
	//基础模块
	basicSetup:{
		modelName: [
			{required: true, message: SYS_MSG.VAIL_REQUIRED, trigger: 'blur'}
		 ],
		modelType: [
			{required: true, message: SYS_MSG.VAIL_REQUIRED, trigger: 'blur'}
		],
	}
}

basicSetup:为模块层级。(由于模块较大,所以采用分模块层级方式)

required:校验类别,required为必填项类别

message:提示文本,SYS_MSG.VAIL_REQUIRED值对应提示文本是【必须输入的字段】

trigger:校验触发的事件,blur 为失去焦点时触发

步骤3 配置表单html部分

<i-form ref="model-basic-setup-form"  :model="form.basicSetup"  :rules="validate.basicSetup">
	<form-item label="模块名称" prop="modelName"> 
 		<i-input  v-model="form.basicSetup.modelName"  placeholder="请输入模块名称中文名称"></i-input>
	</form-item>
</i-form>

:model 指定表单,就是步骤1里配置的内容(如果该项配置错误,则会出现文本框有值,但是依然提示校验失败错误)

:rules 指定校验规则,就是步骤2里配置的内容

prop 该项必须指定,否则校验失效,该值内容为具体表单内容项

步骤4 提交表单时,进行校验

//表单校验
that.$refs['model-basic-setup-form'].validate(function(valid){
	flag=valid;
});

常见问题

1.输入内容后依然校验不通过

解决办法:检查:model值是否对应表单项,没有正确执行表单项则会出现校验失败问题。

2.输入内容后,页面无任何提示,校验返回false

问题原因:

表单ref属性重复导致

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!