当用户键入以键入范围之外的日期时,我们会尝试确保将日期更改为最接近的最小值/最大值。即使脚本正在更改值()
,日期选择器中显示的文本也不会更改@(Html.Kendo()
.DatePickerFor(x => x.DOB)
.Max(new DateTime(DateTime.Now.AddYears(-18).Year, DateTime.Now.AddYears(-18).Month, DateTime.Now.AddYears(-18).Day))
.Min(new DateTime(DateTime.Now.AddYears(-70).Year, DateTime.Now.AddYears(-70).Month, DateTime.Now.AddYears(-70).Day))
.Events(e=>e.Change("onDOBChange"))
.HtmlAttributes(new { required = "required", ng_model = "model.DOB" }))
<p ng-show="validateState.submitted && frmMain.DOB.$invalid" class="help-block">Please select</p>
<script>
function onDOBChange(e) {
var dt = $("#DOB").data("kendoDatePicker");
if (dt.value() < dt.min()) {
dt.value(dt.min());
} else if (dt.value() > dt.max()) {
dt.value(dt.max());
}
}
</script>
答案 0 :(得分:1)
我有一个解决方案,在val()中检查null,然后转到该元素以获取它: