VUE.JS + Bootstrap - 如何将同一输入中的第一个字母大写
VUE.JS + Bootstrap - How to capitalize first letter in the same input
我想在开始写的时候输入首字母大写。
<b-form-input v-model="formSurname" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required> </b-form-input>
我也过滤了这个。但是 v-model="formSurname | capitalize"
不起作用 我试过 :value="formSurname | capitalize"
但它也不起作用
Vue.filter("capitalize", function (value) {
if (!value)
return '';
value = value.toString();
return value.charAt(0).toUpperCase() + value.slice(1);
});
如何输入实时更改首字母?
如果您需要 存储 大写的值,请使用带有设置和获取方法的计算 属性 :
computed: {
formSurnameCapital: {
get: function () {
return this.formSurname;
},
// setter
set: function (newSurname) {
if(newSurname.length < 1) {this.formSurname = ''; return}
this.formSurname = newSurname.replace(/^./, newSurname[0].toUpperCase());
}
}
}
在您的模板中:
<b-form-input v-model="formSurnameCapital" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required> </b-form-input>
否则,如果只是显示大写,你可以简单地使用 css :
.toCapitalFirst {
text-transform: capitalize;
}
您可以在 methods
的 keyup
活动中更新 formSurname
<b-form-input v-model="formSurname" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required @keyup="formatSurname"> </b-form-input>
在方法中:
formatSurname() {
if (this.formSurname) {
this.formSurname = this.formSurname.toString()
this.formSurname = this.formSurname.charAt(0).toUpperCase() + this.formSurname.slice(1)
}
}
我想在开始写的时候输入首字母大写。
<b-form-input v-model="formSurname" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required> </b-form-input>
我也过滤了这个。但是 v-model="formSurname | capitalize"
不起作用 我试过 :value="formSurname | capitalize"
但它也不起作用
Vue.filter("capitalize", function (value) {
if (!value)
return '';
value = value.toString();
return value.charAt(0).toUpperCase() + value.slice(1);
});
如何输入实时更改首字母?
如果您需要 存储 大写的值,请使用带有设置和获取方法的计算 属性 :
computed: {
formSurnameCapital: {
get: function () {
return this.formSurname;
},
// setter
set: function (newSurname) {
if(newSurname.length < 1) {this.formSurname = ''; return}
this.formSurname = newSurname.replace(/^./, newSurname[0].toUpperCase());
}
}
}
在您的模板中:
<b-form-input v-model="formSurnameCapital" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required> </b-form-input>
否则,如果只是显示大写,你可以简单地使用 css :
.toCapitalFirst {
text-transform: capitalize;
}
您可以在 methods
keyup
活动中更新 formSurname
<b-form-input v-model="formSurname" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required @keyup="formatSurname"> </b-form-input>
在方法中:
formatSurname() {
if (this.formSurname) {
this.formSurname = this.formSurname.toString()
this.formSurname = this.formSurname.charAt(0).toUpperCase() + this.formSurname.slice(1)
}
}