我的 ASP.Net MVC 4 应用程序的页面上有一个日期输入字段。当用户更改此日期时,我需要运行一些客户端验证。
生成该字段的代码是:
@Html.DatePickerFor(x => x.EndDate)
在与上述代码相同的 cshtml 页面的底部,我还有以下内容:
<script type="text/javascript">
MyValidation.FormValidator.initialize($('#EndDate'));
</script>
和 MyValidation.FormValidator.js 文件:
MyValidation.FormValidator = (function () {
return {
initialize: function (endDateInput) {
endDateInput.bind('input', function () {
alert("hit");
SomeValidationFunction();
});
}
};
})();
我尝试了很多不同的方法来编写
endDateInput.bind('input', function () {...}
部分,以便它正确触发,但我的尝试都没有奏效。例如,我目前的工作是仅在用户输入日期时才导致验证逻辑运行;如果用户从弹出日历中选择新日期,则不会触发验证。
我对 Web 开发非常陌生,所以我认为我在这里做的事情根本上是错误的,因为这似乎不应该是一个难题。