Skip to content

lodash js笔记

jiang2016tao edited this page Aug 17, 2018 · 1 revision

_.debounce

在文本框中希望用户输入完后,请求数据。使用kayup,因为用户输完了,焦点不一定会离开所以用blur事件是不行的。但是使用keyup事件也不知道用户是否输入完成,所以目前现根据内容判断,和延迟触发。
如:我的先判断是否正确输入IP地址,然后500毫秒的延迟来触发事件。

hostIPInput:_.debounce(function(e,at,o){
            let value=$(e.target).val();
            if(!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(value)){
                return false;
            }
            let attrId=$("#metric_checkbox .metric-check:checked").attr("value");
            let param={
                jobType:jobType,
                ip:value,
                attrId:attrId
            };
            processHost.reqProcessHost(param);
        },500)

Clone this wiki locally