我正在研究一对直接相互影响的表单域。具体来说,我正在处理的问题是我们有成千上万的用户可以加入这个我一直在努力的网站上。我们正在为该站点创建一些管理分析表单。这些表单的一部分是按组过滤。
问题是大多数人不知道他们头顶上的一个组的名称,只知道它的开头。因此,我们没有使用自动完成功能,而是提出了两个下拉菜单。第一个包含选项 A 到 Z,即组名开头的字母。第二个下拉列表包含以所选字母开头的所有组。
这个概念很简单,我们可以很容易地用 jQuery 实现 AJAX。但这会导致验证错误。经过一些研究,我发现这与 Drupal 表单缓存有关。解决方案是使用 ahah 函数。
问题在于,到目前为止,我发现的所有指令都是针对指定字段更新本身而不是另一个字段的啊哈动作。因此,我试图弄清楚如何获取字母列表以使用 ahah 更新组列表并将新值注册到表单缓存中。
我发现的一种解决方案是简单地将页面上的所有值加载到隐藏的下拉列表中,然后根据需要将集合中的值加载到可见的下拉列表中。但这会产生很多问题,因为客户端几乎只使用 IE,而且我们已经看到 IE 在给定如此庞大的列表时会阻塞。尤其是存储在 JavaScript 中的列表。所以我们需要一个轻量级的解决方案。
有什么想法吗?想法?