输入框失焦事件与按钮点击事件同时触发bug

https://img.mukewang.com/5c7dc66f0001511003230329.jpg

问题描述:输入框失去焦点时会请求接口获取数据,按钮点击时判断数据能否进行下一步,我输入完内容直接点击下一步,会把输入框blur事件,按钮点击事件同时触发,这时接口可能还未返回结果,导致直接进入下一步,该如何解决呢?

一只甜甜圈
浏览 1681回答 2
2回答

江户川乱折腾

提供个思路,仅供参考设置一个标志变量记录是否已经获取了请求返回的结果,为isGetResult,初始值为false,如果已经获取了上一步的请求结果,则isGetResult = true,在进行下一步操作的时候检查这个isGetResult是否为true,如果为true就进行下一步操作,为false,就先发送上一步的请求这样,当用户输入完内容直接点下一步的时候,isGetResult就是false,会先发请求判断数据,在获取请求结果之后,再进入下一步。注意,用户每次focus的时候,记得将isGetResult置为初始值,即false

小怪兽爱吃肉

失去焦点去接口请求数据有点不太合理,可以考虑下点击下一步的时候进行判断,不能的话不进行按钮点击事件而是进行相关提示。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript