Добавить новую панель в Kendo UI Splitter

Я хочу динамически добавлять новые панели в Kendo UI Spliter, но кажется, что он не работает. Даже на их веб-сайте это не работает: демо-версия Kendo UI Splitter (я говорю о панели добавления и вставки)

Возможно ли, что они добавили демонстрацию чего-то, что не работает, или я что-то упустил?

1 ответ

Это ошибка - по-видимому, код не вызывает _resize метод, когда это должно (в _addPane а также remove, насколько я вижу).

Кажется, что это легко исправить (добавьте этот код где-то перед первым созданием вашего сплиттера):

kendo.ui.Splitter.fn._addPane = function (config, idx, paneElement) {
    var that = this;

    if (paneElement.length) {
        that.options.panes.splice(idx, 0, config);
        that._initPane(paneElement, config);

        that._removeSplitBars();

        that.trigger("resize");
        that._resize();
    }

    return paneElement;
};

kendo.ui.Splitter.fn.remove = function (pane) {
    pane = $(pane);

    var that = this;

    if (pane.length) {
        kendo.destroy(pane);
        pane.each(function (idx, element) {
            that.options.panes.splice($(element).index(".k-pane"), 1);
            $(element).remove();
        });

        that._removeSplitBars();

        if (that.options.panes.length) {
            that.trigger("resize");
            that._resize();
        }
    }

    return that;
}

Посмотреть демо

Другие вопросы по тегам