最近在做项目的过程中, 需要用到各种大数据量下的选择, 比如地区属性(700多个), 行业属性(100多个)等, 地区是有树形结构的, 但是层数不定, 行业是平行结构的. 这两种情况下, 使用下拉菜单, 或者结合级联的下拉菜单来实现都会比较麻烦, 并且界面也不友好. 经过比较了Google搜到的一些方案, 最后使用的是一个叫SelectToAutocomplete的jQuery插件. 项目地址在 http://baymard.com/labs/country-selector. 调用的方式很简单
$('select').selectToAutocomplete();
需要实现自动完成的下拉菜单结构是这样的
这个插件会将下拉菜单转为隐藏, 而显示一个input框, 自动完成使用显示的文本及data-alternative-spellings部分的内容, 而提交产生的是所设置的value. 非常灵活, 可以适用于多种情况.