上操作datePicker CSS我试图根据其他小部件(复选框和数字文本框)启用/禁用日期选择器。当我尝试使用true或false作为参数调用DatePicker.enable()时,由于DatePicker尚未准备好,所以出现错误。看起来像Kendo小部件还没有准备好,直到$(document).ready。当日期选择器准备好被操纵时,是否有任何事件会告诉我?现在我正在使用setTimeout,这感觉真的是错误的。
这是我的代码示例。
$(document).ready(function() {
ChangeDatePickersState();
});
function ChangeDatePickersState() {
var input = $('#MyCheckbox:checked')
var bool = input.length != 0 ? true : false;
EnableDatePickerForCheckbox('MyDatePicker', bool);
function EnableDatePickerForCheckbox(inputName, inputValue) {
var datePicker = $('#' + inputName).data("kendoDatePicker");
if (inputValue == true) {
datePicker.enable(true);
}
else {
datePicker.enable(false);
datePicker.value(null);
}
}
在此先感谢。
我忘了提及使用剑道与MVC,但无论如何,我从他们的论坛得到了答案: Kendo UI小部件不初始化时触发事件,但你可以指望他们的存在,如果你包括你的自定义document.ready处理程序中的逻辑,它被添加在页面末尾
。这将确保处理程序将在所有窗口小部件初始化语句之后执行,这也取决于document.ready。在这种情况下不需要setTimeout。 谢谢大家! –