首页 > 其他 > 详细

suggest快速删除后仍然会出现下拉列表的bug解决方法

时间:2016-12-02 03:18:35      阅读:180      评论:0      收藏:0      [点我收藏+]

写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解决方法

原文:http://www.cnblogs.com/webxzy/p/6124093.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!