3
I'mn使用selectize加载使用一个ASP.Net web服务动态搜索结果,并与没有问题。然而,为了显示结果的下拉我不得不失去和恢复焦点从selectize控制(这将删除文本),或删除的内容我已经输入。显示动态搜索结果的下拉
如何显示结果下拉当我输入?这是我使用
$('#input-tags3').selectize(
{
valueField : 'id',
labelField : 'name',
searchfield : 'name',
plugins : ['remove_button'],
options : [],
delimiter : ',',
highlight : true,
persist : true,
hideselected : true,
create : false,
load : function (query, callback)
{
if (!query.length || query.length < 3)
return callback();
$.ajax(
{
url : '../data/WebService1.asmx/GetLookup',
data : "pSearchType=CAC&pQuery=" + query,
type : 'GET',
error : function()
{
callback();
},
success : function (res)
{
callback(res);
}
}
);
}
score : function (search)
{
var score = this.getScoreFunction(search);
return function (item)
{
return score(item) * (1 + Math.min(item.watchers/100, 1));
};
},
render :
{
item : function (item, escape)
{
return '<div>'
+ '<b>' + item.id + '</b><p>' + item.name + '</p></div>'
},
option : function (item, escape)
{
return '<div>'
+ '<b>' + item.id + '</b><p>' + item.name + '</p></div>'
}
}
});
而且,上面的代码附加任何动态结果向下拉的代码,并没有按预期清除它。
注:得分函数从文档复制的selectize.js上从GitHub获取远程的数据;它不仅与当前的问题无关,而且还有问题,除非远程数据源使用可用于计分的“watchers”属性返回数据。我从我自己的代码中删除了这个函数,没有任何效果。 – Adam