我使用 jquery.autocomplete.js 作为自动填充文本框。
我获得了按键事件的所有位置记录。
keypress事件我传递了位置文本框的文本值。
对于eq。我写文本“ Lo ”然后每当我从SQL数据库中获得新建议时,它都会获得以“Lo”开头的所有记录。
我的问题是。我在文本框下看到了两个,三个或更多列表框作为建议。 我写了.unautocomplete()方法,用于删除每个按键事件中的先前建议列表。 如何修复文本框中以前的unautocomplte列表..
在我的自动填充中,我看到自动填充建议列表显示了多个建议列表..
如何解决这个问题..
下面我写了我的代码。
<script>
$('#<%= txtLocation.ClientID %>').onkeypress(function () {
if ($('#<%= txtLocation.ClientID %>').val().length >= 1) {
GetCitiesLikeList($('#<%= txtLocation.ClientID %>').val());
}
});
function GetCitiesLikeList(objcity) {
if (objcity != null && objcity != "") {
$.ajax({
type: "POST",
url: "http://www.myweburl.com/webservices.asmx/GetCitiesLikeList",
data: "{ City : '" + objcity + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
if (msg.d != null && msg.d != "") {
cities = msg.d.split(",");
$(".location").autocomplete(cities, {
matchContains: true,
minChars: 0
});
}
else
$(".location").unautocomplete();
},
error: function(xhr, ajaxOptions, thrownError) {return false;}
});
}
else
$(".location").unautocomplete();
}
</script>
查看此图像我的自动填充建议列表中出现了什么问题。
给我解决这个问题。
-Thanks
ABHI
答案 0 :(得分:1)
您不需要使用独立的自动完成插件,因为它现在是jQueryUI的part。
答案 1 :(得分:1)
我不确定我是否正确地说出了你所说的100%,但只是做了几件事:
keypress
事件。当你在一个元素上调用.autocomplete()
时,它已经为你做了。所以我猜你为什么要加倍列表是因为你在技术上再做一次自动完成(手动)。