【发布时间】:2015-12-21 10:18:32
【问题描述】:
我有一个选择框,其中的选项和选择是通过 Knockout.js 处理的。我想使用 Materialize CSS 来设置它的样式。
这适用于Select框的初始显示,当添加到BocketOut.js的选项时,通过使用“OptionsAwterrender”绑定到(重新)在添加每个选项后初始化(浪费,但有效)。
删除选项时,Knockout.js 不提供类似于“optionsAfterRender”的任何内容,因此没有明显的方法来触发 Materialize CSS 魔法的重新初始化。
问题:有没有你可以看到的非疯狂选项?
代码:
<select data-bind="
options: options,
optionsText: function(item) { return optionsText[item] },
value: displayedValue,
optionsAfterRender: function (option, item) {
setTimeout(function() {
$(option.parentElement).material_select();
}, 0);
}
">
</select>
('setTimeout' 是必需的,否则不会选择所选选项。)
【问题讨论】:
标签: javascript knockout.js materialize