在bootstrap标签中添加标签动态输入不起作用

时间:2017-06-06 10:54:25

标签: javascript jquery html twitter-bootstrap tags

我正在尝试通过bootstrap标签输入设置标签,但它不起作用并发出以下错误:

TypeError: b.options.itemValue(...) is undefined

我的代码如下:

$('#searchGeoBottom').tagsinput({
    maxTags: 5,
    delay: 500,
    itemValue: 'value',
    itemText: 'text',
    typeahead: {
        displayKey: 'text',
        source: function (query) {
            if (ajax) {
                ajax.abort();
            }
            var data = {term: query};
            ajax = $.getJSON((baseUrl + "geoSearch"), data);
            return ajax;
        },
        afterSelect: function () {
            this.$element[0].value = '';
        }
    }
});
if (typeof searchGeo != 'undefined' && searchGeo != '') {
    $('#searchGeoBottom').tagsinput('add', searchGeo);
}

我也尝试过以下搜索时找到的方法:

var elt = $('#searchGeoBottom').tagsinput({....});
elt.tagsinput('add', searchGeo);

但它也没有用,给出elt没有定义或elt不是函数..

以下是我传入添加功能的json:

[{"text":"Lahore. United States","value":4768156}]

1 个答案:

答案 0 :(得分:2)

对于可能遇到同样问题的人,请尝试以下代码:

const schema = joi.object({
    password      : joi.string().trim().empty(''),
    device_type   : joi.number(),
    device_token  : joi.string().trim()
}).with('password', ['device_type', 'device_token']);