使用挖空.js隐藏/取消隐藏时不应用 jquery UI 主题

jquery UI theme is not applied when using knockout.js to hide/unhide

本文关键字:隐藏 应用 jquery 主题 UI js 取消      更新时间:2023-09-26

我在 DOM 后初始化的底部有这个:

$("button, input:submit, input:button").button();

这适用于屏幕上的所有按钮,但稍后显示的按钮没有应用主题。我在挖空中使用"可见"绑定支持.js根据页面上的用户交互显示表单。将jqueryUI主题应用于所有内容(无论何时创建)的干净方法是什么?

不,它不会,因为除非你继续重新应用你在那里的jquery按钮代码,否则新按钮不会被转换。

但是,有一种更好的方法可以使用处理程序来做到这一点,例如,我使用这个......

 ko.bindingHandlers.button = {
        init: function (element, valueAccessor, allBindingsAccessor) {
            var options = allBindingsAccessor().buttonOptions || {};
            $(element).button(options);
            ko.utils.domNodeDisposal.addDisposeCallback(element, function () {
                $(element).button("destroy");
            });
        }
    };

现在你可以把东西绑定成按钮。

<button data-bind='button:{}, buttonOptions:{icons: {primary: "ui-icon-pencil"}}'  onclick="">
相关文章: