我一直在寻找一个javascript(希望是jQuery)时区选择器/选择器/控件小部件,我可以将其包含在我的社交日历/事件路由器Web应用程序中。
鉴于通常的下拉菜单中列出了大约400个城市,我希望有人对这个可怜的用户表示同情并且在我自己创建之前已经有一个带有更好界面的漂亮UI小部件。 (我已经看到一些不错的网站示例,它们使用地图来选择时区,但是它们在我的应用程序的页面上占用了太多的空间。)
虽然有几种方法可以列出除GMT偏移之外的时区,但我认为组织时区的最佳方法是使用带子菜单的分层下拉菜单。然后我将按大陆列出,然后按子菜单列出国家和主要城市以及可能不符合地理或夏令时规则的城市/地区例外情况。即MST的亚利桑那州和印第安纳州的一些城市。
小部件中包含能够记住用户的最后5个选项并将其显示在列表顶部的能力。
小部件还允许用户使用autosuggest进行键入(它将用户输入视为前缀,后缀和查询中的任何其他位置。在SQL术语中,它等同于:WHERE some_column_name LIKE%query %)。他们的打字会提供一系列减少的选择,使得列表可以从更短的选择中进行选择。即 - CST将提供使用CST作为缩写的几个时区,-7将显示当前时区设置为GMT-7的城市列表,5.5将列出Inida的国家等。
如果有人知道接近匹配的小部件,会很好奇知道他们在哪里获取他们的时区和DST数据,因为有几个来源并且数据总是在更新。
答案 0 :(得分:2)
我认为时区选择器的github上有一个有用的dev分支,时区为here。
对于有限的输入集,我真的很喜欢timepickr,但它仍然需要一个时区。我不确定你打算如何将这个字段提交给数据库,但是你可以为时区提供一个相邻的文本框字段,并将其与jquery autocomplete绑定用于时区,这样会很好,因为它们可以过滤如果您同时在文本标签中包含它们,则关闭时区的长和缩写。
使用有限的选项使用jquery autocomplete来推动自己的实现也不难。
答案 1 :(得分:0)
我已经在这里创建了LGPL这样的小部件(jQuery插件):https://github.com/peterjtracey/timezoneWidget - 它具有相应的PHP代码,可以动态生成时区数据,以便考虑夏令时并轻松存储数据库值可用的服务器端。