我正在使用 RPNiemeyer 的剑道淘汰库。我有一个剑道窗口,我在 html 中使用它:
<div data-bind="kendoWindow: { isOpen: isOpen, title:'States', width: 600, height: 150, modal: true, resizable: false, actions: ['Maximize', 'Close'] }" > </div>
我曾经这样将对话框居中:
$('#productionStates').data("kendoWindow").center();
But as center
是一种我无法像这样在标记中传递它的方法center: true
。在 kendo-knockout 文档中,某些小部件有一个属性小部件,我的猜测是这是关键,但我不确定如何使用它,因为没有示例。任何想法都会受到欢迎。谢谢!
The widget
参数旨在当您需要以所提供的绑定选项不支持的方式与小部件交互时使用。通常,这是最后的手段,但在这种情况下,它看起来是正确的选择。
你所做的是将一个可观察的传递给widget
参数,它将被实际的小部件填充。然后,您可以从视图模型中调用它的方法。
就像是:
var ViewModel = function() {
this.isOpen = ko.observable(false);
//center it if it is opened
this.isOpen.subscribe(function(newValue) {
if (newValue) {
this.myWidget().center();
}
}, this);
//hold the widget
this.myWidget = ko.observable();
};
然后,在标记中:
<div data-bind="kendoWindow: { isOpen: isOpen, visible: false, modal: true, widget: myWidget }">
...
</div>
示例在这里:http://jsfiddle.net/rniemeyer/gNgDm/ http://jsfiddle.net/rniemeyer/gNgDm/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)