【发布时间】:2012-07-14 00:31:00
【问题描述】:
我的自动完成工作正常,因为我可以选择文本。但问题是我想获取所选项目的键值(Id)。所以我可以设置隐藏字段并使用服务器端。
这是我的网络方法代码:
[WebMethod]
public List<string> AuotExtenderHotel(string hotelname)
{
DataSet ds = objHotelList.GetHotels(hotelname);
List<string> result = new List<string>();
foreach (DataRow dr in ds.Tables[0].Rows)
{
result.Add(dr["HotelName"].ToString());
}
return result;
}
这是我的 jquery 自动完成代码
<script type="text/javascript">
$(document).ready(function () { HotelText(); });
function HotelText() {
$(".txthotel").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "WebService.asmx/AuotExtenderHotel",
data: "{'hotelname':'" + $('.txthotel').val() + "'}",
dataType: "json",
success: function (data) {
response(data.d);
},
error: function (result) {
alert("Error");
}
});
}
});
}
</script>
【问题讨论】:
-
您是否尝试过阅读文档? jQuery autocomplete events 之一是“选择”,并在选择项目时触发。
-
@moranjk 是的,我找到了该事件,但我不知道如何获取所选字符串的值部分
-
看一下Autocomlete的Demo中使用的search.php的结果jqueryui.com/demos/autocomplete/search.php?term=Great
标签: jquery asp.net json web-services jquery-autocomplete