簡體   English   中英

在Select2輸入框中選擇2個預加載的標簽

[英]Select2 preloaded tags in Select2 input box

我有一個工作得很好的Select2輸入。 用戶可以從下拉菜單中開始鍵入並選擇一個選項,它會在輸入字段中添加一個標記,由於createSearchChoice函數,它們也可以創建自己的標記。

我的方案是當用戶鍵入一個已存在的客戶名稱時,它會鎖定,我希望它用標簽填充該字段(通常的供應商)。 然后,用戶可以根據需要刪除或添加更多標簽。

我的代碼是:

$('#usualSuppliers').select2({
        containerCssClass: 'supplierTags',
        placeholder: "Usual suppliers...",
        minimumInputLength: 2,
        multiple: true,
        placeholder: 'Usual suppliers...',
                createSearchChoice: function(term, data) {
            if ($(data).filter(function() {
                return this.name.localeCompare(term) === 0;
            }).length === 0) {
                return {id: 0, name: term};
            }

        },
        id: function(e) {
            return e.id + ":" + e.name;
        },
        ajax: {
            url: ROOT + 'Ajax',
            dataType: 'json',
            type: 'POST',
            data: function(term, page) {

                return {
                    call: 'Record->supplierHelper',
                    q: term
                };
            },
            results: function(data, page) {
                return {
                    results: data.suppliers
                };
            }
        },
        formatResult: formatResult,
        formatSelection: formatSelection,
        initSelection: function(element, callback) {
            var data = [];
            $(element.val().split(",")).each(function(i) {
                var item = this.split(':');
                data.push({
                    id: item[0],
                    title: item[1]
                });
            });
            //$(element).val('');
            callback(data);
        }
    });

如何使用來自Ajax請求的標記預先填充輸入?

由於這篇文章,我設法解決了這個問題:

在select2 multiselect中加載值

通過使用觸發器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM