如何将jQuery对话框按钮绑定到淘汰赛viewmodel
-
22-10-2019 - |
题
我想做的是制作一个对话框,其中按钮是敲除viewModel的数据库,以便我可以根据表单上的各种条件启用或禁用这些按钮
但是,您在jQuery对话框中制作按钮的方式与正常情况有些不同。
有人有解决方案吗?
解决方案
确保自己应用
class
到对话框的按钮:$("#dialog").dialog({ buttons: [{ text: 'Ok', class: 'ok-button' }] });
抓住
button.ok-button
并应用data-bind
属于它(visible
在这里,只是向您展示它有效)。这里,name
是我们视图模型的可观察属性:$("button.ok-button").attr("data-bind", "visible: name().length");
通常应用绑定:
var model = { name: ko.observable('') }; ko.applyBindings(model);
这是一个示例,该示例是对话框上的“确定”按钮 name
(可观察)有一个长度 > 0
: http://jsfiddle.net/9crfy/
其他提示
为了加上Andrew的答案,由于数据结合属性只是您可以添加到按钮的另一个属性,因此这也可以工作:
$("#dialog").dialog({
buttons: [{
text: 'Ok',
'data-bind': 'visible: name().length'
}]
});
不隶属于 StackOverflow