我正在使用twitter bootstrap 2.0.4.我想使用ajax填充下拉列表.
typeahead插件的source属性要求source的值为数组
或功能.我尝试在ajax请求之后更改数组的值,但它只显示第一个请求的结果.
<form class="navbar-search">
<input type="text" id="searchSong" class="typeahead" placeholder="Search">
</form>
$('.typeahead').keyup(function(){
var list;
var q = $('.typeahead').val();
if(!q){
return;
}
$.ajax({
type: "GET",
url: "/WebApplication1/Playlist/search?query="+q,
success: function(data){
list = data.split(',');
alert(list);
$('.typeahead').typeahead({
source: list
})
}
});
警报框显示从ajax加载的数据是正确的,但下拉列表仍显示以前的值
最佳答案 我不认为该版本支持使用开箱即用的ajax填充typeahead.但是,有一些版本的插件可以支持它.
Here’s one.我不记得那是否与我使用的相同,但如果是,它的效果非常好.我会肯定地发现并更新这个答案.
更新:
Here is a question你应该看看.在所选答案中给出的extension是我使用的那个.