这是从previous JQueryUI Autocomplete question, I asked的延续。不知道如何使用JQuery用户界面自动完成... :(
这一次,我有我的数据返回......但我不知道怎么我定义什么HTML显示和如何动态更新与我的结果HTML。
所以,这里是我的jQuery ....
Home.js
function AutoComplete(element) {
var cache = {};
$(element).autocomplete({
minLength: 2,
source: function (request, response) {
if (request.term in cache) {
response(cache[request.term]);
return;
}
else {
$.getJSON("/api/autocomplete/" +
encodeURIComponent(request.term),
function (data) {
cache[request.term] = data;
response(data);
});
}
}
});
}
,这在我看来是
Index.aspx
<script type="text/javascript">
$(document).ready(function() {
AutoComplete("#searchQuestion");
})
</script>
有线了现在..我不知道我怎么告诉它使用一些(尚未进行)HTML/DIV /等。 ...然后填充该<ul>
列表(我假设我扩展回调,上面..而不是调用这个response(data)
方法.. wtf是吗?)
@Rafael BELLIARD:欢呼的答案。是的,一直在使用Firebug进行远程教育。现在..什么是$ .map(..)???自动完成是否使用它创建的一些魔法HTML,远离你和我..但需要一个值+ ID?另外,formatAutoComplete(..)方法是什么?那该假设做什么? – 2010-09-13 13:03:33
@ Pure.Krome:$ map只是用于遍历数组的一种奇特方法:http://api.jquery.com/jQuery.map/ – rebelliard 2010-09-13 13:10:57
@ Pure.Krome:formatAutocomplete()对于简单安装不是必需的。我将它连接起来,因为当自动完成文本框显示item.Value时,我希望另一个文本框显示item.Key,因此它只会执行$(“othertextbox”).val(item.Id); (if(ui.item))只是为了检查该项目不是空的,所以它不会崩溃。 – rebelliard 2010-09-13 13:13:06