我正在使用asp.net核心标记帮助程序输入type =“ date”,它使我可以输入4位以上的数字。我曾尝试设置显示格式,但仍然允许我输入一年多于4位的数字,从而导致一年没有意义。
<input asp-for="@Model.BirthDate" placeholder="mm/dd/yyyy" class="form-control" type="date" required="">
其中BirthDate在我的模型中定义如下:
public DateTime? BirthDate { get; set; }
是的,我确实尝试将BirthDate更改为不可为空。
我可以在“输入”字段中输入以下内容: 08/01/2001999999 ,这将导致输入显示以下内容: 08/01/275760 。有没有一种方法可以强制标签助手在一年中只允许输入4位数字?
答案 0 :(得分:0)
您应该使用-格式肯定取决于您希望用户输入值的格式。
asp-format="{0:yyyy-MM-dd}"
还要在Model属性上添加以下属性
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
希望这行得通。