2

タグを選択すると、タグは正しく追加されますが、テキスト [object Object] が入力ボックスに追加されます。(下の画像を参照)

Bootstrap 3、JQuery、Bootstrap3-typeahead、bootstrap-tagsinput を使用しています (すべての最新バージョン)

フォームはモーダル ウィンドウにあります。

tag_error

コードは次のとおりです。

jQuery('#banner_geo_locations').tagsinput({
    itemValue: 'value',
    itemText: 'text',
    typeahead: {
        displayKey: 'text',
        source: function (query) {
            return jQuery.get("http://dev.marijuanaweeklycoupons.com/?action=ajax|cityStateSsearchTags&PageSpeed=off&q=" + query);
        }
    }
});

Ajax は次のようになります。

[{"value":"2908762","text":"Dixon Corner, AL"},
{"value":"2956030","text":"Dixon Corner, ME"},
{"value":"3008251","text":"Dixon Corner, PA"},
{"value":"2931983","text":"Dixon Crossroads, GA"},
{"value":"3017149","text":"Dixon Crossroads, SC"},
{"value":"2959449","text":"Dixon Estates, MD"},
{"value":"2959450","text":"Dixon Hill, MD"},
{"value":"2993971","text":"Dixon Landing, NC"},
{"value":"2908763","text":"Dixon Shop, AL"},
{"value":"2938722","text":"Dixon Springs, IL"}]

フィドルでそれを見る

4

2 に答える 2

3

ライブラリの問題です。

以下を追加すると、問題が解決します。

afterSelect: function(val) { this.$element.val(""); },

そのような、

jQuery('#banner_geo_locations').tagsinput({
    itemValue: 'value',
    itemText: 'text',
    typeahead: {
        displayKey: 'text',
        afterSelect: function(val) { this.$element.val(""); },
        source: function (query) {
            return jQuery.get(current_web_root + "?action=ajax|cityStateSearchTags&PageSpeed=off&q=" + query);
        }
    }
});

jsfiddle を参照してください

https://jsfiddle.net/rgaxuyda/11/

于 2015-06-04T18:42:20.063 に答える