2012-12-05 318 views
2

我使用的是引導的預輸入自動完成在顯示文本輸入字段選擇的項目無法與Twitter的引導預輸入

我可以成功地從服務器獲取項目的列表,看到一個下拉列表對於使用以下代碼的建議詞:

$('.search-field').typeahead({ 
     source: function(query, process){ 
      var queryParameters = form_params(document.getElementById("search")); 
      var inputid = this.$element.attr('id'); 
      $.getJSON(
       "GET DATA From SERVER" 
        }));  
       });     
     }, 
     minLength: 1,   
     updater:function(item){ 
      var id = this.$element.attr('id'); 
      $('#'+id).val(item); 
      $('#'+id).text(item); 
      console.log($('#'+id)); 
      instantSearch();     
     } 
    }); 

問題出在更新程序中。當我在下拉列表中選擇一個項目時,項目參數是我選擇的正確字符串。我想在輸入文本字段中顯示選定的項目,但是沒有任何反應。 兩個

$('#'+id).val(item); 

document.getElementById('id').value = item; 

失敗。

有誰知道如何在bootstrap的typeahead更新器中設置文本輸入字段的值嗎?

+0

難以調試代碼,您應該在jsfiddle.net上運行示例 –

回答

0

動態設置的選擇是困難的,我不知道你能做到這一點,但值得一去: 嘗試:

var itemSelect = "'#" + id + "'"; 
$(itemSelect).val(item); 

OR

var itemSelect = document.getElementById(id); 
itemSelect.value(item);