4

使用 KendoUI 2013.3.1109

我正在使用KendoUI 的调度程序

我正在使用预订表格的模板,但通过谷歌搜索和阅读论坛,我了解到重新使用他们的重复表格。我什至通过实验发现可以通过例如运行来选择可用的周期选项:

$("#recurrenceEditor").kendoRecurrenceEditor(
    {
      frequencies: ["never", "daily", "weekly", "monthly"]
    }); 
});

上面的代码不会在下拉列表中加载“每年”选项。网站上没有 kendoRecurrenceEditor 的 API 文档,但我想知道是否可以调整其他选项,例如在重复到期时删除“从不”标签等等。

4

1 回答 1

3

所以我初始化了剑道循环编辑器:

 $("#recurrenceEditor").kendoRecurrenceEditor({
            change: function() {
                onRecurrenceEditorChange();
            }
  });

然后我调整#recurrenceEditor 中可见的内容

var onRecurrenceEditorChange = function() {
            var recurrenceKendoNumericTextBox = $('#recurrenceEditor .k-widget.k-numerictextbox.k-recur-count input[data-role="numerictextbox"]')
                .data('kendoNumericTextBox');

            if (recurrenceKendoNumericTextBox != null) {

                var recurrenceEditorNeverEndOption = _container.find('#recurrenceEditor label:has(.k-recur-end-never)');

                if (recurrenceEditorNeverEndOption != null)
                    recurrenceEditorNeverEndOption.hide();

                recurrenceKendoNumericTextBox.max(10);

                var recurrenceKendoDatePicker = _container.find('#recurrenceEditor .k-datepicker input[data-role="datepicker"]').data("kendoDatePicker");
                if (recurrenceKendoDatePicker != null) {
                    var maxDate = window.moment().add('months', 2).toDate();
                    recurrenceKendoDatePicker.max(maxDate);
                    recurrenceKendoDatePicker.value(maxDate);
                }
            }
        };

然后,如果您想调整间隔,请以这种方式解决:

var recurrencePeriodKendoDropDownList = $('.k-widget.k-dropdown input[data-role="dropdownlist"]').data("kendoDropDownList");
        var recurrencePeriodFilters = [
            {
                field: "value",
                operator: "neq",
                value: 'yearly'
            }, {
                field: "value",
                operator: "neq",
                value: 'monthly'
            },
            // if it's a newres, don't hide 'Never' option which matches to "", 
            {
                field: "value",
                operator: "neq",
                value: someBoolConditionIhave ? "fake" : ""
            }
        ];
于 2014-05-26T17:31:54.550 回答