【问题标题】:Extend Kendo MultiSelect扩展 Kendo MultiSelect
【发布时间】:2018-09-27 21:25:57
【问题描述】:

我正在尝试通过扩展现有的多选小部件来创建一个新的剑道多选小部件。目标是在输入下方的 div 中显示标签列表。

我在这段代码中的目标是在小部件的选择事件上将标签列表呈现在单独的div中,然后返回基础小部件的选择事件(Kendo MultiSelect),但基础小部件的选择事件返回dataItem undefind 错误。我做错了什么?

(function ($) {
    var customMultiSelect = kendo.ui.MultiSelect.extend({
        init: function (element, options) {
            var that = this;
            kendo.ui.MultiSelect.fn.init.call(that, element, options);

            // Hide the tag list...
            var id = that.element.attr('id');
            that.wrapper.find(`ul#${id}_taglist`).addClass("hidden");

            that.element.on("select", that._select);
        },
        options: {
            name: "CustomMultiSelect"
        },
        _select: function (e) {
            // code to render the tag list in a div goes here

            that.trigger("select", e);
            return kendo.ui.MultiSelect.prototype._select.call(e);
        }   
    });

    kendo.ui.plugin(customMultiSelect);
})(jQuery, document); 

【问题讨论】:

    标签: jquery kendo-ui kendo-multiselect


    【解决方案1】:

    我已经测试了代码,起初得到了错误 - “未定义”。添加 var that = this;在“_select”方法中,我注意到您必须将“that”作为第一个参数添加到调用函数中。这是在我身边正常工作的代码 - https://dojo.telerik.com/@zdravkov/ApOVApiV

    【讨论】:

    • 太棒了!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    • 1970-01-01
    • 1970-01-01
    • 2013-07-09
    • 1970-01-01
    • 2022-11-15
    相关资源
    最近更新 更多