typeahead基本使用
typeahead的基本使用,其实就是官网上的一些例子的源代码,这个的效果不错,大家可以试试,用到项目中也是个不错的选择。
官网网址:https://github.com/twitter/typeahead.js
例子,源代码,代码发布记录等全部可以找到。
附件typeahead.zip是从上面下载的源代码
附件json-creator.zip是生成测试json的测试类
不多说了,简单的功能不一般的实现,看看例子应该就明白了
但是在应用的时候发现了一些问题,就是remote的调用问题,在论坛上咨询了J Harding,他也没有给出很好的解决方案
Well if you want to load data through remote
, you'll have to handle the filtering/sorting of the data server-side.
If you want to use prefetch and periodically update the data, you could do something like:
function updateTypeahead() {
$('.typeahead')
.typeahead('destroy')
.typeahead({ prefetch: '/data.json' });
}
updateTypeahead();
setInterval(updateTypeahead, UPDATE_INTERVAL);
This will prevent any localStorage caching (because there is no name
property) and will result in the backing data being updated every UPDATE_INTERVAL
milliseconds.
总体来说,typeahead对实时性的支持不强,也许Jake Harding会在0.9.4以后的版本中改进。
如果使用remote方法,正如J harding所说的,只能在后台对数据进行拦截处理
使用prefetch的话,就如上面代码提示的,但是使用IE的时候,会有恶心的缓存问题,加个时间戳啥的吧