我继承了一个项目-我有一个日期选择器,当我选择日期时,必须按Enter才能识别所选日期,否则即使日期显示在文本框中,它也会显示“ Required”。我很沮丧
似乎KendoDatepicker和淘汰赛都在使用。这是HTML
:
<div class="col-lg-4">
<span data-bind="validationOptions: { insertMessages: false}">
<label class="control-label">Date of Birth</label>
<input id="Student_DateOfBirth" class="form-control" style="width: 100%;" data-bind="value: Student.DateOfBirth, valueUpdate: 'afterkeydown'" onkeydown="return (event.keyCode!=13);" />
</span>
<span class="text-danger" data-bind="validationMessage: Student.DateOfBirth"></span>
</div>
在这里我相信它正在初始化:
$("#Student_DateOfBirth").kendoDatePicker({
format: "yyyy-MM-dd"
});
这是验证:
self.Student.DateOfBirth = ko.observable(self.Student.DateOfBirth()).extend({ required: { params: true, message: 'Date Of Birth is required.' } });
现在如上所述,当我选择日期时,它显示在文本框中,但仍显示“ Required”,但是当光标在文本框中时,当我按Enter时,验证就消失了,现在我可以保存了。
知道我在这里缺少什么吗?任何帮助将不胜感激!