2015-10-19 82 views
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>' 

    } 
} 
}); 

而且,上面的代码附加任何动态结果向下拉的代码,并没有按预期清除它。

+0

注:得分函数从文档复制的selectize.js上从GitHub获取远程的数据;它不仅与当前的问题无关,而且还有问题,除非远程数据源使用可用于计分的“watchers”属性返回数据。我从我自己的代码中删除了这个函数,没有任何效果。 – Adam

回答