2016-06-29 24 views
0

我试图将typeahead字段(.typeahead)的建议列表中的值添加到另一个文本输入中。例如,当我键入“A”并从建议值中进行键入或键入时,值应该显示在文本字段中.result如何在键入前存档。有什么特别的方法可以与之搭配吗?当Keyup或Keydown事件时Typeahead填充文本框

<input type="text" class="typeahead box"/> 
<input type="text" class="result" placeholder="Result"/> 
<script> 
var states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 
    'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 
    'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 
    'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 
    'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 
    'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 
    'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', 
    'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 
    'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming' 
]; 

var states = new Bloodhound({ 
    datumTokenizer: Bloodhound.tokenizers.whitespace, 
    queryTokenizer: Bloodhound.tokenizers.whitespace, 
    // `states` is an array of state names defined in "The Basics" 
    local: states 
}); 

$('.typeahead').typeahead({ 
    hint: true, 
    highlight: true, 
    minLength: 1 
}, 
{ 
    name: 'states', 
    source: states 
}); 

</script> 
+0

仍然困惑为什么这么多人试图从typeahead.js中获得任何好处。这是一个被遗弃的项目,没有维护,250个未解决的问题 - 其中一些非常非常严重 - 但关于这个混乱的问题似乎永远不会结束在stackoverflow :( – davidkonrad

回答

0

我已经找到了自己。使用typeahead:cursorchange来获取值。

$('.typeahead').bind('typeahead:cursorchange ', function(ev, suggestion) { 
    $('.result').val(suggestion); 
});