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