1.html
<input
style="width:0;height:0;padding:0;border:0;"
ref="inputdata"
v-model="formItem.authCode"
@blur="inputblur()"
type="text"
/>
2. // 监听Modal状态,当Modal 打开,文本框焦点存在
paymentMethod(val) {
if (val == "1") {
this.keyPress();
}
}
3.methods: {
keyPress() {
// nextTick 针对DOM 没有渲染出现Undefined问题
this.$nextTick(() => {
this.$refs.inputdata.focus();
});
},
// 失去焦点
inputblur() {
let that = this;
// FireFox 和 IE 失去焦点,blur直接执行focus 不会生效,加个延时
setTimeout(() => {
that.$refs.inputdata.focus();
}, 10);
},
}
网友评论