asp.net-mvc - 使用引导日期选择器对 MM/YYYY 进行 ASP NET MVC 客户端验证
问题描述
我有一个带有月份字段的表单。为了限制用户输入的值,我使用了在 javascript 文件中初始化的 bootstrap datepicker:
$(function () {
$('.month-picker').datepicker({
format: "mm/yyyy",
startView: "months",
minViewMode: "months"
});
}
这是我在这个领域的 Razor 代码:
<div class="input-group date month-picker" data-provide="datepicker">
@Html.TextBoxFor(m => m.Mes, "{0:MM/yyyy}", new { id = "Mes", @class = "form-control"})
<div class="input-group-append">
<span class="input-group-text"><i class="fa fa-calendar"></i></span>
</div>
</div>
这是我在 c# 中的属性:
[DisplayFormat(DataFormatString = "{0:MM/yyyy}")]
public DateTime? Mes { get; set; }
当我验证用户输入的日期时,我使用这个验证器方法:
$.validator.methods.date = function (value, element) {
return this.optional(element) || moment(value, "DD/MM/YYYY", true).isValid();
这适用于日期,但现在我需要验证 MM/YYYY。此验证失败,因为在此方法中收到的值没有日期部分 DD/。
我想为日期维护这个验证器方法并为几个月创建一个新的验证器。我必须如何进行?我是否必须在服务器中创建与客户端验证方法相关联的自定义验证器?是否可以在客户端中仅创建验证规则并覆盖当前正在执行的日期方法?如果是这样,应该怎么做?
解决方案
推荐阅读
- docker - 如何在不使用 --scale 的情况下使用 docker-compose 指定容器数量?
- java - 这段代码似乎编译不干净
- dart - 在全局变量中使用值时,由于 EdgeInsets.all 导致 Flutter dart 编译失败
- proxy - Outlook 通过 .PAC 文件
- reactjs - React Spring 中的动画持续时间
- reactjs - React on state change 中的动画按钮
- mapstruct - 将 List 转换为具有多个参数的另一个 List
- c# - 按需单例。很想知道这是否是一种不好的做法,以及实现我的目标的更好方法
- xml - XSLT - 将相似节点组合在一起并删除重复节点
- android - 如何使用 volley 在 android 的幻灯片 viewPager 中获取图像