我正在尝试使用一个可搜索的javascript选择框,它具有多个选择选项,并根据之前选择的选项过滤其余选项。我已经查看了Chosen,Selectize.js,typeahead.js和其他一些对象,它们很接近,但是我还没有找到一种基于先前选择来动态减少选择框选项的方法。
我的数据非常复杂,所以这是两个简单的用例
我有包含国家,州和城市/县的数据。
用户应该能够采用以下不同路径:
a)输入usa,将USA作为唯一选项,将其选中,然后输入“ Vir”,然后查看处女岛和弗吉尼亚州,然后查看弗吉尼亚并选择它,然后输入“ al”并看到“ alexandria市”和“ albermarle县”选择“亚历山德里亚城市”,并在下表中看到与之相关的一些结果。
b)键入“ montgom”并查看“ montgomery county”并选择它,然后,当用户在框中单击时,他们应该看到的唯一值是国家/地区的美国,弗吉尼亚州和马里兰州(以及具有该县名的任何其他州),然后选择“弗吉尼亚”并获得结果,因为没有其他组合的值可以保留
我所看过的任何地方都没有看到的关键功能是对同一选择框(或组合框,取决于您要调用的内容)内部值的动态更新。很多示例都显示了级联的选择框,但我不希望这样,因为我已经拥有了这些选择框,并且由于我必须使用所有的选择框,所以它占用了很多空间(我最多可以选择8个不同的选择框,具体取决于特定的用例)。
我也很好奇人们如何构建国家来支持这一点。它是一个两列的关联列表,它针对每个允许的组合不断进行(例如图数据库关系的黑化版本),或者是三列,其中包含:国家,州,城市/县允许的组合?
我花了很大一部分时间以各种不同的方式(例如,本体搜索,分类法,动态层次标记)(完全不是这样,但我认为这将是类似的概念)来搜索该概念,但到目前为止查找有效的示例/演示,或者说明如何在代码和数据库结构中执行此操作。
就技术细节而言,我正在运行MS T-SQL DB和ASP.net前端,并带有一些用于其他网站功能的javascript / jquery / ajax代码。
我感谢我建议探索的任何建议链接,阅读或其他示例,也许我可能错过了。看起来好像没有其他人正在寻找这种东西,也许这就是为什么我对此感到孤单。