设置动态创建的Autocompete建议位置在输入字段下

时间:2017-06-12 04:46:47

标签: jquery css autocomplete

我创建了动态创建的自动完成功能。自动填充工作正常。 问题是放置其建议清单。

当我们进入自动填充时,我们会得到建议。在我的情况下,我已将它添加到不同的div。因此,当我进入一个领域时,我得到第二个领域的建议。我已经添加了它的图片。

如图所示,当我输入第一个输入时,我得到第二个建议。

脚本:

$('body').on('focus',".skill_class", function(){

 $('.skill_class').autocomplete({
    lookup: skill_string,
    appendTo: '.skill_outer_div',
    minChars: 1,
    onSelect: function (suggestion) {
        var selectedValueID = suggestion.data;          
        $(this).closest('.skill_outer_div').find('input[name="key_skill_id_hidden[]"]').val(selectedValueID);
    },  
    showNoSuggestionNotice: true,
    noSuggestionNotice: 'No Skill Found.'
});
});

HTML代码:

<div class="col-md-4">
<div class="form-group skill_outer_div">        
    <label for="key_skill" class="control-label">Skill *</label>
    <input type="text" name="skill_input[]" id="skill_input" required class="form-control skill_class" />       
</div>

enter image description here

1 个答案:

答案 0 :(得分:0)

试试这个:

$('body').on('focus',".skill_class", function(e){

 $(e.target).autocomplete({
    lookup: skill_string,
    appendTo: '.skill_outer_div',
    ...

由于$('.skill_class')选择了许多字段,jQuery可能会选择并将建议列表应用于选择中的最后一项。改为使用$(e.target)将帮助它识别相应的字段并正确放置结果。