【问题标题】:Dynamically enable/disable kendo datepicker with Knockout-Kendo.js使用 Knockout-Kendo.js 动态启用/禁用 kendo 日期选择器
【发布时间】:2013-10-24 15:26:32
【问题描述】:

我正在尝试根据使用 Knockout-Kendo.js 的选择值启用/禁用剑道日期选择器。

HTML:

<select data-bind="value: test">
    <option value="1">1</option>
    <option value="2">2</option>
</select>
<input data-bind="kendoDatePicker: {value: date, enabled: test() == 2}" />

JS:

ko.applyBindings({
    date: ko.observable(),
    test: ko.observable(), 
});

小提琴:http://jsfiddle.net/xTjqH/2/

它最初会禁用日期选择器,但一旦选择“2”就不会启用它。

【问题讨论】:

    标签: knockout.js kendo-ui knockout-kendo


    【解决方案1】:

    根据跟踪 kendo 绑定中各个选项的依赖关系的方式,您需要使用计算的来表示您的 enabled 条件。否则,test() == 2 会立即被评估,并且不会再次被评估。

    使用您的示例,您可以绑定类似dateEnabled 的计算:

    var viewModel = {
        date: ko.observable(),
        test: ko.observable(), 
    };
    
    viewModel.dateEnabled = ko.computed(function() {
       return viewModel.test() === "2"; 
    });
    

    示例:http://jsfiddle.net/rniemeyer/JaVKt/

    【讨论】:

      猜你喜欢
      • 2023-03-04
      • 1970-01-01
      • 2023-01-30
      • 1970-01-01
      • 1970-01-01
      • 2017-08-23
      • 1970-01-01
      • 2015-05-19
      相关资源
      最近更新 更多