select2 4.0在查询方法中使用较旧的列表,并且minimumInputLength未生效

时间:2015-08-13 19:04:15

标签: jquery-select2-4

我正在将select2版本3.5.1升级到4.0。我需要使用查询方法来执行任务。

出现两个具体问题

  1. minimumInputLength未生效
  2. 当用户对焦搜索框时,显示过去的结果,搜索...是第一项。 (如果我分配空结果然后它解决了问题,但它显示未找到结果消息)
  3. 请参阅下面的我的代码段。

    var self = this, $view = $(view);
    
            $.fn.select2.amd.require(['select2/data/array', 'select2/utils', 'select2/data/minimumInputLength'], function (ArrayData, Utils, MinimumInputLength) {
    
                function CustomData($element, options) {
                    CustomData.__super__.constructor.call(this, $element, options);
                    this.options = options;
                }
    
                Utils.Extend(CustomData, ArrayData);
    
                CustomData.prototype.query = function (params, callback) {
                    //callback({ results: [] });
                    self.searchText(params.term);
                    q(ko.unwrap(self.qPromise)).then(function () {
                        var select2data = $.map(ko.unwrap(self.dataSource), function (obj) {
                            obj.id = obj.id || obj.Id + obj.KeyDoc;
                            obj.text = obj.text || obj.Headline;
                            return obj;
                        });
                        callback({ results: select2data });
                    });
                }
    
                // Decorate after the adapter is built
                Utils.Decorate(CustomData, MinimumInputLength);
    
                $view.select2({
                    dataAdapter: CustomData,
                    multiple: ko.unwrap(self.multiple),
                    templateResult: ko.unwrap(self.formatFunc),
                    escapeMarkup: function (markup) { return markup; },
                    dropdownParent: $('.' + ko.unwrap(self.containerClass)),
                    placeholder: ko.unwrap(self.placeHolderCaption),
                    minimumInputLength: 1,
                    allowClear: true
                });
    
            });
    

    每次我希望在建议列表中分配新选项(没有缓存没有存储) 请建议解决方法。

    先谢谢

0 个答案:

没有答案