knockout.js并禁用自定义绑定
我希望在自定义绑定中绑定disabled和css,而不是使用JQuery分配类并禁用它。您可以在自定义绑定中执行此操作,而不必执行knockout.js并禁用自定义绑定,knockout.js,ko-custom-binding,Knockout.js,Ko Custom Binding,我希望在自定义绑定中绑定disabled和css,而不是使用JQuery分配类并禁用它。您可以在自定义绑定中执行此操作,而不必执行$(element).attr('disabled',true).addClass('disabled') Knockout现在包含一个镜像已启用绑定的disable绑定,您可以使用jQuery或调用现有的css和disabled绑定(): Html: 当然不会知道您可以访问这样的默认自定义绑定,谢谢! data_bind="enabled: classroomId(
$(element).attr('disabled',true).addClass('disabled')代码>
Knockout现在包含一个镜像已启用绑定的disable
绑定,您可以使用jQuery或调用现有的css和disabled绑定():
Html:
当然不会知道您可以访问这样的默认自定义绑定,谢谢!
data_bind="enabled: classroomId(), css: { 'disabled' : !classroomId() }"
data_bind="disable: { !classroomId() }
ko.bindingHandlers.disable = {
update: function (element, valueAccessor) {
var disabled = ko.utils.unwrapObservable(valueAccessor());
// Disable and Add Class to Button or Anchor Tag
}
};
ko.bindingHandlers.myDisabled = {
update: function(element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
ko.bindingHandlers.css.update(element, function() {return { disabled: value }; });
ko.bindingHandlers.disable.update(element, valueAccessor);
}
};
<input type="text" data-bind="value: name, myDisabled: !enabled()"/>