我正在开发一个UI(支持AJAX; LAMP服务器),它允许用户指定公司运营的区域。在这种情况下,“地区”可能是一个州(如果与美国打交道),一个省(加拿大),或整个国家(其他人)。
由于世界上有195个国家/地区,我希望避免使用多选框或复选框列表。在导致此特定屏幕的工作流程中,用户已经输入了公司的完整地址,因此我有一个起始区域可供使用。
由于大多数公司只在自己的区域内运营,而且覆盖多个区域的公司往往不会分支太远,我正在考虑根据邻近度逐步显示区域列表。我知道在某些时候(我现在使用3遍)需要显示完整列表;我只是试图推迟用户达到这一点,因为这是一个明确的边缘情况。
Here is a PNG mockup that explains this concept a bit more clearly。 (196KB)
问题:
答案 0 :(得分:0)
我不清楚你想要从当前的UI中获得什么(你在寻找分支机构吗?其他公司?等等?)
我不是使用纯地理邻近来定义区域的忠实粉丝。例如,如果一家公司在纽约市运营,它可能在新泽西州设有一个办公室,可能就像月球一样。另一方面,对于锚地公司而言,温哥华的办公室仍然可以在该地区内。不幸的是,州界也是毫无意义的。例如,我住在宾夕法尼亚州西部,可以告诉你,虽然匹兹堡和费城属于同一个州,但对于所有重要的国家来说,他们可能是不同的国家,而且大多数公司都有办事处。
如果你的项目是基于灯的,为什么不让用户点击地图上的一个点,并根据它询问他的意思(例如,最近的城市,整个县,整个州,整个国家?)如果你然后需要定义整个区域,您可以使用某种抓取工具来点击或描绘可能属于其中的所有其他区域吗?
无论哪种方式,将您的办公室作为图钉呈现在地图上,然后可能在标准谷歌地图处理搜索的方式上有一个列表。
这可能是很多工作,但如果它是一种重要的形式,用户可能更喜欢手动输入文本或从列表中选择。
答案 1 :(得分:0)
您是否希望用户阅读地图以了解要转到的复选框列表?如果您的用户具有地理能力水平,那么他们直接从地图中选择区域的工作就少了,而不是让他们进行地图到邻近级别的认知转移,然后是接近级别到 - 区域转移。
如果某些用户没有那种级别的地理专业知识(你可能会惊讶于有多少美国人在美国地图上找不到他们自己的州),那么我会尝试,也许除了地图,不超过两个列表,一个近端(默认),其中区域靠近归属地址,一个是详尽的。我看不到具有较弱地理能力的用户能够处理多个任意级别的邻近度。无法很好地阅读地图的人无法估计一个地区与另一个地区的接近程度。所以我的想法是尝试一个近端列表,如果这不起作用,那么忘记接近并且详尽无遗 - 不要让你的用户在寻找爱达荷的邻近层面游荡(“我发誓它在印第安纳附近”)。
默认情况下,根据对可能客户的研究,显示可能满足大多数用户的区域的近端列表。 “更多”按钮显示详尽列表。两个列表都应按字母顺序排序,除非首先将详尽列表细分为美国各省,省和县。加拿大领土和国家(包括美国(全部)和加拿大(全部))。
您可以提供一些命令按钮来选择多个区域(例如,“所有48个连续的美国州,全美南美洲”),允许用户随后取消选择某些区域。出于这个原因,在用户提交输入之前,我不会滚动任何内容。
作为使用地图加列表的人的示例(全部使用HTML,不能少),请参阅http://justaddwater.dk/2007/12/21/map-with-positions-in-css/