我有以下想法,但我找不到任何代码片段或类似的例子,所以我不知道是否有可能用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自动完成将能够选择它,并显示你需要的方式。