ASP.jQuery UI自动完成的输出格式(显示值标签键对)



我有以下想法,但我找不到任何代码片段或类似的例子,所以我不知道是否有可能用jQuery UI做到这一点。在数据库中,我有一个表,其中每个客户都有ID和Name:

ID        Name
1         John Example
2         Johnny Example

我现在想做的是,如果用户输入Joh,它应该以以下方式显示条目:

John Example - 1
Johnny Example - 2

所以我的问题是:它是可能的,在所有做这样的显示为我的自动完成功能?

我的视图和自动完成功能的代码现在看起来像这样,只显示客户的名字:
<script>
    $("#CustomerName").autocomplete({
        source: "/Customer/AutoCompleteCustomer",
        minLength: 2
    })
</script

谢谢,如果你需要任何进一步的信息,请告诉我,我会尽快提供给你。

让我们看看jQuery文档:

支持两种格式:

  • 字符串数组:["Choice1", "Choice2"]
  • 具有标签和值属性的对象数组:[{label: "Choice1", value: "value1"},…]

和之后,当谈论向服务器请求数据

例如,如果源选项被设置为"http://example.com"并且如果用户键入foo,则会向其发出GET请求http://example.com?term=foo。数据本身可以采用相同的格式如上所述的本地数据。label属性显示在建议菜单中。

因此,只要您的服务器注意返回数据作为字符串数组:

["John Example - 1", "Johnny Example - 2"]

或对象数组:

[{label: "John Example - 1", value: "1"}, {label: "Johnny Example - 2", value:"2"}]

jQuery自动完成将能够选择它,并显示你需要的方式。

最新更新