<input @blur="checkName"/>
<button @click="submitform">提交</button>
填完input信息直接点击提交,会触发blur 需要再点击一次提交才会触发submitform事件 如何解决啊
<input @blur="checkName"/>
<button @click="submitform">提交</button>
填完input信息直接点击提交,会触发blur 需要再点击一次提交才会触发submitform事件 如何解决啊
你这么理解,什么情况失去焦点呢? 就是你的input失去焦点的时候,所以你离开的时候点击了提交的按钮
你可以不要写 @blur 可以点击submitform的时候,获取到input的输入值
<input v-model="Input_box"/>
<button @click="submitform">提交</button>
data(){
return{
Input_box:""
}
},
methods:{
submitform(){
console.log(this.Input_box);
}
}
首先,blur
比onClick
优先级高,那么blur
里面验证,如果验证通过,就会继续执行onClick,如果验证不通过,将验证结果给onClick
,在onClick
里直接return
.
如果是异步验证,请使用async await
13 回答12.8k 阅读
7 回答1.9k 阅读
5 回答1.3k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
5 回答1k 阅读✓ 已解决
6 回答822 阅读✓ 已解决
这个跟vue有毛关系?你点击按钮肯定是失去焦点了啊
我这里直接触发2个事件的啊!
要不然你改