mirror of https://github.com/ElemeFE/element
Form: fix validate state
parent
146e02c4a3
commit
409a3c852f
|
@ -5,15 +5,17 @@
|
|||
if (!value) {
|
||||
return callback(new Error('Please input the age'));
|
||||
}
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('Please input digits'));
|
||||
} else {
|
||||
if (value < 18) {
|
||||
callback(new Error('Age must be greater than 18'));
|
||||
setTimeout(() => {
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('Please input digits'));
|
||||
} else {
|
||||
callback();
|
||||
if (value < 18) {
|
||||
callback(new Error('Age must be greater than 18'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
var validatePass = (rule, value, callback) => {
|
||||
if (value === '') {
|
||||
|
@ -338,7 +340,8 @@ When the vertical space is limited and the form is relatively simple, you can pu
|
|||
<el-option label="Zone one" value="shanghai"></el-option>
|
||||
<el-option label="Zone two" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item><el-form-item>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="onSubmit">Query</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
@ -546,15 +549,17 @@ This example shows how to customize your own validation rules to finish a two-fa
|
|||
if (!value) {
|
||||
return callback(new Error('Please input the age'));
|
||||
}
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('Please input digits'));
|
||||
} else {
|
||||
if (value < 18) {
|
||||
callback(new Error('Age must be greater than 18'));
|
||||
setTimeout(() => {
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('Please input digits'));
|
||||
} else {
|
||||
callback();
|
||||
if (value < 18) {
|
||||
callback(new Error('Age must be greater than 18'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
var validatePass = (rule, value, callback) => {
|
||||
if (value === '') {
|
||||
|
|
|
@ -5,15 +5,17 @@
|
|||
if (!value) {
|
||||
return callback(new Error('年龄不能为空'));
|
||||
}
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('请输入数字值'));
|
||||
} else {
|
||||
if (value < 18) {
|
||||
callback(new Error('必须年满18岁'));
|
||||
setTimeout(() => {
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('请输入数字值'));
|
||||
} else {
|
||||
callback();
|
||||
if (value < 18) {
|
||||
callback(new Error('必须年满18岁'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
var validatePass = (rule, value, callback) => {
|
||||
if (value === '') {
|
||||
|
@ -331,7 +333,8 @@
|
|||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item><el-form-item>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="onSubmit">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
@ -537,15 +540,17 @@
|
|||
if (!value) {
|
||||
return callback(new Error('年龄不能为空'));
|
||||
}
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('请输入数字值'));
|
||||
} else {
|
||||
if (value < 18) {
|
||||
callback(new Error('必须年满18岁'));
|
||||
setTimeout(() => {
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error('请输入数字值'));
|
||||
} else {
|
||||
callback();
|
||||
if (value < 18) {
|
||||
callback(new Error('必须年满18岁'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
var validatePass = (rule, value, callback) => {
|
||||
if (value === '') {
|
||||
|
|
|
@ -53,7 +53,10 @@
|
|||
label: String,
|
||||
labelWidth: String,
|
||||
prop: String,
|
||||
required: Boolean,
|
||||
required: {
|
||||
type: Boolean,
|
||||
default: undefined
|
||||
},
|
||||
rules: [Object, Array],
|
||||
error: String,
|
||||
validateStatus: String,
|
||||
|
@ -165,7 +168,7 @@
|
|||
validate(trigger, callback = noop) {
|
||||
this.validateDisabled = false;
|
||||
var rules = this.getFilteredRule(trigger);
|
||||
if ((!rules || rules.length === 0) && !this._props.hasOwnProperty('required')) {
|
||||
if ((!rules || rules.length === 0) && this.required === undefined) {
|
||||
callback();
|
||||
return true;
|
||||
}
|
||||
|
@ -216,7 +219,7 @@
|
|||
getRules() {
|
||||
var formRules = this.form.rules;
|
||||
var selfRules = this.rules;
|
||||
var requiredRule = this._props.hasOwnProperty('required') ? { required: !!this.required } : [];
|
||||
var requiredRule = this.required !== undefined ? { required: !!this.required } : [];
|
||||
|
||||
formRules = formRules ? formRules[this.prop] : [];
|
||||
|
||||
|
@ -255,7 +258,7 @@
|
|||
|
||||
let rules = this.getRules();
|
||||
|
||||
if (rules.length || this._props.hasOwnProperty('required')) {
|
||||
if (rules.length || this.required !== undefined) {
|
||||
this.$on('el.form.blur', this.onFieldBlur);
|
||||
this.$on('el.form.change', this.onFieldChange);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue