0

我正在寻找一个用于选择框的 js/jquery 插件。

要求如下:

  1. 允许多选项目,理想情况下不重复(删除已经选择的项目)
  2. 自动完成,如jquery 自动完成选择
  3. 应该允许用户输入初始选择中不存在的值。
  4. 它应该能够快速研磨大量选项。金额约为3至1万。
  5. 它应该能够处理用于自动完成的 unicode 字符。

我以前用过choose,它符合大多数要求,除了4和5。

这样的东西存在吗?或者至少是一些接近且可用于分叉的东西?

4

1 回答 1

7

当我阅读您的规范时,首先想到的是AtlassianJIRA正在使用的选择框。由于这是迄今为止我遇到的最用户友好/好看的选择器,我将首先提到它。

它:

  • 允许多选,显示得非常漂亮: 在此处输入图像描述

  • 具有基于 REST 服务的自动完成功能:

在此处输入图像描述

  • 允许发布外部值(尽管 JIRA 会在我尝试过的场景中拒绝 POST 之后的值,但这取决于应用程序的逻辑)。
  • 由于它使用 REST,它能够在合理的时间内处理的数据量完全取决于您的服务器端代码和服务器规范。
  • JIRA 是 unicode-proof,所以我没有理由相信这个组件不是。请注意,服务器端 REST 服务也应该是 unicode 证明,它们之间的通信也应该是。

Atlassian 在其 API 中将此组件称为“起泡器控件”:

AJS.MultiSelect JavaScript 控件。有时他们可能被称为“采摘者”。但大多数时候人们只是称它为 Frother Control™。

我找到了上述AJS.MultiSelect 类的一些来源,但还没有找到包含的许可证,所以我不确定它是否可以自由分叉。我认为 AJS 是 Atlassian 自己的 JavaScript 库,因此它很可能处于商业或受限许可之下。


您可以调查的另一件事是Sencha 的 ExtJS4 的 ComboBox。(示例)。

这种控制非常灵活、可扩展和可分叉。

我过去曾在各种项目中使用过这个 ComboBox,我可以确认它可以进行多选、外来值、自动完成(本地和/或服务器端)和 unicode。

大多数 Ext 组件都可以单独使用,而无需使用整个框架。过去我们在将 Ext 与 jQuery 结合使用时有些头疼,但我相信这些问题已成为过去。

于 2012-08-30T15:47:58.700 回答