美文网首页
input 离焦事件和点击事件冲突

input 离焦事件和点击事件冲突

作者: Cherry丶小丸子 | 来源:发表于2021-06-27 13:50 被阅读0次
    场景

    有一个input输入框,其绑定了blur事件
    有一个保存按钮,其绑定了click事件
    blur事件触发input的值存储到变量中,点击保存按钮click事件,将变量提交

    导致

    点击保存按钮时,先出发blur事件,然后在触发click事件,
    某种情况下会仅仅触发blur事件,不触发click事件

    解决方案

    将click事件改为mousedown事件,并在事件方法里设定一个定时器,这样会先触发click事件,然后在触发blur事件

    mousedown.native + setTimeout(()=>{}, 0)
    
    
    <el-input v-model="value" size="mini" @blur="blur"></el-input>
    <el-button size="small" type="primary" @mousedown.native="saveBtn">保存</el-button>
    
    saveBtn(){
        setTimeout(() => {
            // do something
        }, 0);
    }
    

    相关文章

      网友评论

          本文标题:input 离焦事件和点击事件冲突

          本文链接:https://www.haomeiwen.com/subject/bvlxultx.html