上操作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。 謝謝大家! –