Bootstrap typeahead自动补全插件的坑

##Bootstrap typeahead 插件的坑

typeahead 自动补全插件,

还是先简单记录一下,如何使用吧:

<div class="form-group">    
    <label class="col-sm-3 control-label is-required">医生:</label>
    <div class="col-sm-8">
        <input hidden id="hiddenDoctor" name="doctorId">
        <input id="doctorName" class="form-control" type="text" required>
    </div>
</div>
$.get(ctx + "treatment/log/doctor/auto/list", function(data){
            $("#doctorName").typeahead({
                source: data.value,
                updater: function (item) {
                    $("#hiddenDoctor").val(item.id)
                    return item.name;
                }
            });
        },'json');

这样就实现了一个自动补全。

typeahead 的做法好像是页面加载后就调用接口,然后再根据输入的关键字进行过滤

如果数据量很大,我觉得这种方式不可取。

我使用Bootstrap typeahead遇到的坑

1.自动补全的返回值字段必须叫name

image-20220414113435041

所以如果你想对某个字段进行自动补全,后端返回数据时,必须将这个字段命名为name。

2.name字段不能含有null

第一个条件是字段必须叫name,第二个条件就是name字段不能是null。返回的列表数据,只要有一个name的字段为null,自动补全就用不了

猜你喜欢

转载自blog.csdn.net/qq_42682745/article/details/124176905