HTML:
<input type="textbox" class="typeahead" id="location" onkeyup="localTypeahead('location')">
<input type="textbox" class="typeahead" id="location2" onkeyup="localTypeahead('location2')">
JAVASCRIPT:
function localTypeahead(divid){
var citylocalvalues = [{'id':101,'name':'jaipur'}, {'id':102,'name':'delhi'}];
jQuery('input.typeahead').typeahead({
onSelect: function(item) {
jQuery("#"+divid).val(item.value);
},
source: citylocalvalues
});
}
以上示例功能似乎将发生两种不同的工作,并且在每个文本框上将分别设置值 但是,我收到的价值仅在两种情况下都改为第一个文本框。
答案 0 :(得分:1)
jQuery('input.typeahead')
应该匹配正确的输入(您目前正在输入的特定输入),将其更改为:jQuery('#' + divid)
答案 1 :(得分:0)
通常,在HTML(内联JS)中设置onclick
并不是一个好主意。理想情况下,您希望将功能与查看元素分开。所以我建议您删除onkeyup="function(...)"
,并在您的JS文件或html文档底部的js脚本中设置如下:
$(document).ready(function() {
$('#location').on('keyup', function(ev) {
// You can access the object that fired the keyup event through the variable ev here
});
});
祝你好运!