我正在尝试更改按钮的点击事件。有可能与否。我想检查按钮文本它是文本是“保存”然后保存事件调用否则如果文本是“更新”然后更新事件调用。
此处JSFIDDLE
查看
<input type="button" data-bind="click: $root.save ,value: Save" />
视图模型
function AppViewModel() {
var self = this;
self.Save = ko.observable("Save");
self.save = function () {
self.Save("Update");
}
self.update = function () {
alert('click');
//change button text here
}
}
ko.applyBindings(new AppViewModel());
答案 0 :(得分:3)
您可以尝试对这两个操作使用单个函数:
<input type="button" data-bind="click: $root.doAction ,value: Save" />
self.doAction = function () {
if (self.Save() == "Update") {
self.Save("Save");
} else if (self.Save() == "Save") {
self.Save("Update");
}
}
答案 1 :(得分:0)
您可以执行以下操作:
data-bind="click: function(data, event) { $root.save(event.target.value) }"
然后检查save
函数中的参数是否相等为“保存”或“更新”。