我有一个我在ASP.NET中使用MVC结构创建的网站,总体而言就像通过Web表单创建和显示数据库中的数据的效率。但是,我遇到的问题是使用Razor和EditorFor帮助器。我知道他们最近添加了发送HTML属性的功能,我已经将它与Bootstrap的日期选择器一起用于更友好的输入系统。但是,我找不到一种方法来将EditorFor与现有记录的model.Sale.Date填充到字段中(就像我使用DropDownListFor帮助程序一样)。
@Html.LabelFor(model => model.Sale.Date, new { @class = "control-label" })
@Html.EditorFor(model => model.Sale.Date, new { @class = "form-control datepicker", placeholder = "Pick a date" })
@Html.ValidationMessageFor(model => model.Sale.Date, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.Employee.FullName, htmlAttributes: new { @class = "control-label" })
@Html.DropDownListFor(model => model.Employee.Id, new SelectList(Model.Employees.Employees, "Id", "FullName", Model.Sale.EmployeeId))
@Html.ValidationMessageFor(model => model.Employee.Id, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.Service.Description, htmlAttributes: new { @class = "control-label" })
@Html.DropDownListFor(model => model.Service.Id, new SelectList(Model.Services.Services, "Id", "Description", Model.Sale.ServiceId), null, null)
@Html.ValidationMessageFor(model => model.Service.Id, "", new { @class = "text-danger" })
有没有人知道如何最简单地完成这项工作?
答案 0 :(得分:0)
您可以使用JQueryui
库并使用DatePicker
more info
它有很多功能,您可以在剃刀视图中轻松实现。 您的代码将如下所示:
@Html.JQueryUI().DatepickerFor(model => model.SaleDate, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.SaleDate)
答案 1 :(得分:0)
我这样解决了这个问题:
<input id="FechaCita" name="FechaCita" type="date" class="form-control mr-2" min="@Model.SetUpMinMax.ToString("yyyy-MM-dd")" value="@Model.FechaCita.ToString("yyyy-MM-dd")" />
当我在Web浏览器的控制台中进行测试时,我发现浏览器中带有日期的格式与我使用的格式不同,因此我更改了格式以查看并且一切正常
但是即使在我必须使用任务而不是剃刀的@html帮助器的情况下,因为它再次传递了发送的格式。我可以使用注释格式,但是我用英语保存日期,所以我就这样。