我找到了答案(其中的一部分,我仍然需要處理它)。 我先發布代碼,然後解釋:
$(function()
{
var names = [
{ label: 'Java', value: '1' },
{ label: 'C++', value: '2' },
{ label: 'C#', value: '3' },
{ label: 'Jquery', value: '4' },
{ label: 'Javascript', value: '5' },
{ label: 'ASP', value: '6' },
{ label: 'Pearl', value: '7' },
{ label: 'VB', value: '8' },
{ label: 'Ajax', value: '9' },
{ label: 'Json', value: '10' }];
$("#txtName").autocomplete({
minLength: 2,
source: names,
delay: 500
}).data("autocomplete")._renderItem = function (ul, item)
{
//add data to my control, need to take care of earasing each time.
var elOptNew = document.createElement('option');
elOptNew.text = item.label;
elOptNew.value = item.value;
lst.add(elOptNew);
//this code here adds the items to the popup thats built in.(it's written in jquery-ui.min.js)
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.label + "</a>")
.appendTo(ul);
};
});
HTML:
<input id="txtName"/>
<select id="lst" size='10'></select>
增加的部分(_renderItem
)將每次一個項目,所以你可以做任何你想做的事與一個項目。我決定將它添加到列表中。
其他未做的事情是每次擦除列表。我仍然需要弄清楚如何做到這一點。
爲什麼不使用JQueryUI庫提供的自動完成?它提供事件處理來完成你想要的。 – pphanireddy
你的意思是這個 - http://jqueryui.com/demos/autocomplete/#default? 我以爲他們都是一樣的(我是jQuery中的新手)。 從哪裏可以下載樣式表和代碼? – beMe
你在說appendTo嗎?如果你是,它不適合我。我無法找到格式化resault的方法。 順便說一句,有沒有辦法添加一個滾動條? – beMe