datepicker bootstrap 问题,总是设置属性 input-validation-error,我不想要求
datepicker bootstrap issue, always set the attribute input-validation-error, I don´t want required
我在 aspnet 核心项目中遇到日期选择器 bootstrap 的问题。
我使用日期选择器 bootstrap v.1.6.4,问题是,日期选择器总是必需的,但我不希望它被要求。
我的视图模型.cs
namespace VOICE.Users
{
public class UserViewModel
{
public string Id { get; set; }
public DateTime DateCreation { get; set; }
....//other properties
}
}
我的视图 .cshtml
@model VOICE.Users.UserViewModel
.....//html tags
<div class="form-group" id="data_1">
<label>Date</label>
<div class="input-group date">
<span class="input-group-addon">
<i class="fa fa-calendar"></i>
</span>
<input asp-for="DateCreation" class="form-control">
</div>
</div>
....
@section Styles {
<link href="~/lib/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css" rel="stylesheet" />
}
@section Scripts {
<script src="/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
<script src="~/lib/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
<script src="~/lib/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#data_1 .input-group.date').datepicker({
language: "pt",
todayHighlight: true,
todayBtn: "linked",
keyboardNavigation: false,
forceParse: false,
calendarWeeks: true,
autoclose: true
});
});
</script>
}
当页面加载时,我在网页中有这个
<input class="form-control" type="datetime" data-val="true" data-val-required="The DateCreation field is required." id="DateCreation" name="DateCreation" value="">
当我点击提交按钮时,日期选择器现在处于必需模式,我有这个
<input class="form-control input-validation-error" type="datetime" data-val="true" data-val-required="The DateCreation field is required." id="DateCreation" name="DateCreation" value="" aria-required="true" aria-describedby="DateCreation-error" aria-invalid="true">
如何防止需要数据选择器?我尝试删除属性 data-val-required 但没有成功,问题是添加到 class.
的 input-validation-error
此致。
乔丽妮丝
基于答案 here (go give them the up votes if this is correct). The DateTime needs to be explicitly set as nullable,因为它是值类型。所以以下应该有效:
public Nullable<DateTime> DateCreation { get; set; }
或
public DateTime? DateCreation { get; set; }
我在 aspnet 核心项目中遇到日期选择器 bootstrap 的问题。
我使用日期选择器 bootstrap v.1.6.4,问题是,日期选择器总是必需的,但我不希望它被要求。
我的视图模型.cs
namespace VOICE.Users
{
public class UserViewModel
{
public string Id { get; set; }
public DateTime DateCreation { get; set; }
....//other properties
}
}
我的视图 .cshtml
@model VOICE.Users.UserViewModel
.....//html tags
<div class="form-group" id="data_1">
<label>Date</label>
<div class="input-group date">
<span class="input-group-addon">
<i class="fa fa-calendar"></i>
</span>
<input asp-for="DateCreation" class="form-control">
</div>
</div>
....
@section Styles {
<link href="~/lib/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css" rel="stylesheet" />
}
@section Scripts {
<script src="/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
<script src="~/lib/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
<script src="~/lib/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#data_1 .input-group.date').datepicker({
language: "pt",
todayHighlight: true,
todayBtn: "linked",
keyboardNavigation: false,
forceParse: false,
calendarWeeks: true,
autoclose: true
});
});
</script>
}
当页面加载时,我在网页中有这个
<input class="form-control" type="datetime" data-val="true" data-val-required="The DateCreation field is required." id="DateCreation" name="DateCreation" value="">
当我点击提交按钮时,日期选择器现在处于必需模式,我有这个
<input class="form-control input-validation-error" type="datetime" data-val="true" data-val-required="The DateCreation field is required." id="DateCreation" name="DateCreation" value="" aria-required="true" aria-describedby="DateCreation-error" aria-invalid="true">
如何防止需要数据选择器?我尝试删除属性 data-val-required 但没有成功,问题是添加到 class.
的 input-validation-error此致。
乔丽妮丝
基于答案 here (go give them the up votes if this is correct). The DateTime needs to be explicitly set as nullable,因为它是值类型。所以以下应该有效:
public Nullable<DateTime> DateCreation { get; set; }
或
public DateTime? DateCreation { get; set; }