bootstrap vue select,如何捕捉输入焦点事件
bootstrap vue select, how to catch input focusout event
我有一个 select:
<b-form-select
@input="genderErrors()"
v-model="user.gender.value"
:options="user.gender.items"
class="mdb-select md-form gender-class"
></b-form-select>
<b-form-invalid-feedback
v-show="user.gender.errors.length > 0"
>{{user.gender.errors.join(' ')}}</b-form-invalid-feedback>
及其验证:
import {validationMixin} from 'vuelidate'
import {required} from 'vuelidate/lib/validators'
export default {
mixins: [validationMixin],
name: 'App',
validations: {
user: {
gender: {
value: {
required,
}
}
},
data: () => ({
gender: {
items : [
{value:'male', text: 'Male'},
{value: 'female', text: 'Female'},
{value: null, text: 'Gender'}
],
value: null,
errors: []
},
}),
methods{
genderErrors(person) {
console.log('hahah')
this.$v.[person].gender.value.$touch();
this.[person].gender.errors = [];
if (!this.$v.[person].gender.value.$dirty) {
return;
}
if (!this.$v.[person].gender.value.required) {
this.[person].gender.errors.push('Gender required')
}
},
}
}
在这个例子中,它是一个触发器 genderErrors
仅当我 select 一些选项时,但我想在相关输入失焦时也触发它,以确定用户是否点击输入但不 select 任何值。取决于 documentation 它不支持该事件,但也许有一些方法可以做到这一点???
提前致谢!
您可以使用 @blur.native="onBlur($event)"
。看看here
我有一个 select:
<b-form-select
@input="genderErrors()"
v-model="user.gender.value"
:options="user.gender.items"
class="mdb-select md-form gender-class"
></b-form-select>
<b-form-invalid-feedback
v-show="user.gender.errors.length > 0"
>{{user.gender.errors.join(' ')}}</b-form-invalid-feedback>
及其验证:
import {validationMixin} from 'vuelidate'
import {required} from 'vuelidate/lib/validators'
export default {
mixins: [validationMixin],
name: 'App',
validations: {
user: {
gender: {
value: {
required,
}
}
},
data: () => ({
gender: {
items : [
{value:'male', text: 'Male'},
{value: 'female', text: 'Female'},
{value: null, text: 'Gender'}
],
value: null,
errors: []
},
}),
methods{
genderErrors(person) {
console.log('hahah')
this.$v.[person].gender.value.$touch();
this.[person].gender.errors = [];
if (!this.$v.[person].gender.value.$dirty) {
return;
}
if (!this.$v.[person].gender.value.required) {
this.[person].gender.errors.push('Gender required')
}
},
}
}
在这个例子中,它是一个触发器 genderErrors
仅当我 select 一些选项时,但我想在相关输入失焦时也触发它,以确定用户是否点击输入但不 select 任何值。取决于 documentation 它不支持该事件,但也许有一些方法可以做到这一点???
提前致谢!
您可以使用 @blur.native="onBlur($event)"
。看看here