有关suggest快速删除后仍然出现下拉列表的bug问题

我发现我好像变了,原来每当人成长的时候都会改变。生命本该有意义,我们绝不是白来一场。

写suggest的时候,有时我们快速删除输入框的文字后,但是suggest下拉列表还有出现,导致的原因是因为ajax异步请求造成的。

虽然我们把输入框的内容都删除了,甚至做了停止后续请求的相关操作,但是由于ajax是异步的,即使你停止了后续的操作,但是最后一次请求的数据还在回来的路上。

解决办法看代码:

var inp = document.getElementById('inp'),
timer = 0;
inp.oninput = function (e) {
var val = e.target.value;
var f = function () {
alert(val)
}
if (val === '') {
f = function () {
console.log('setState = []');
}
}
clearTimeout(timer);
timer = setTimeout(function () {
f();
}, 400);
}

我这里贴的代码只是解决思路,把获取到请求回来的数据后续的相关操作先封装到函数里,当检测到value为空的时候,把函数的操作变化一下,就不会出现suggest数据框了。

以上所述是小编给大家介绍的有关suggest快速删除后仍然出现下拉列表的bug问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

以上就是有关suggest快速删除后仍然出现下拉列表的bug问题。你相信你行,你就活力无穷;你认为你自已不行,就会精神萎靡不振!更多关于有关suggest快速删除后仍然出现下拉列表的bug问题请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
ajax Suggest类似google的搜索提示效果

仿google搜索提示 SuggestFramework的使用

bootstrap suggest搜索建议插件使用详解

用Fundebug插件记录网络请求异常的方法

Fundebug支持监控微信小程序HTTP请求错误的方法