use set/clearTimeout to optimize typeahead search