C# jQuery自动完成下拉列表中的多行选项
我在asp.net应用程序中使用jQuery autocomplete来选择项目名称。现在我想在项目下面显示一个简短的描述。大概是这样的: 我的cs文件C代码是:C# jQuery自动完成下拉列表中的多行选项,c#,jquery,asp.net,.net,C#,Jquery,Asp.net,.net,我在asp.net应用程序中使用jQuery autocomplete来选择项目名称。现在我想在项目下面显示一个简短的描述。大概是这样的: 我的cs文件C代码是: public string[] itemAutocomplete(string prefix) { DataSet ds = new DataSet(); ds = autoCompleteItemNameF(prefix); List<string> autolis
public string[] itemAutocomplete(string prefix)
{
DataSet ds = new DataSet();
ds = autoCompleteItemNameF(prefix);
List<string> autolist = new List<string>();
if (ds.Tables[0].Rows.Count > 0 )
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
autolist.Add(ds.Tables[0].Rows[i]["good_name"].ToString()+ "-" + ds.Tables[0].Rows[i]["description"].ToString());
}
}
return autolist.ToArray();
我的jquery函数是:
function item_autocomplete() {
$("[id$=txt_item_name]").autocomplete({
source: function (request, response) {
$.ajax({
url: '<%=ResolveUrl("../Services/AutoComplete.asmx/itemAutocomplete") %>',
data: "{ 'prefix': '" + request.term + "'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
success: function (data) {
response($.map(data.d, function (item) {
return {
label: item.split('-')[0]
}
}))
},
error: function (response) {
alert(response.responseText);
},
failure: function (response) {
alert(response.responseText);
}
});
},
select: function (e, i) {
$("[id$=txt_item_name]").change();
},
minLength: 1
});
};
正如Bhuban所建议的,我使用了jquery的内置功能:
谢谢布班·什里斯塔。正是我需要的。