所以我尝试使用 http://www.eyecon.ro/bootstrap-datepicker/ 中的日期选择器
我在为此日期选择器设置默认值时遇到问题。在我设置日期之前,它会显示格式“0001-01-01 00:00:00”。我想做的是显示今天日期! 我按如下方式创建 DOM,这不是问题..
<div>
@Html.EditorFor(model => model.ValidationValidFrom, new { htmlAttributes = new { @class = "form-control", @id = "ValidationValidFrom" }})
</div>
这将创建 ID 为“ValidationValidFrom”的输入。 我的日期选择器的 jQuery 代码如下:
$("#ValidationValidFrom").datepicker({
format: 'yyyy-mm-dd',
defaultDate: new Date()
});
唯一有效的是属性format,defaultDate由于某种原因不起作用,我尝试过其他线程中显示的其他属性,但没有可用..
生成的代码如下所示:
<input class="form-control text-box single-line" data-val="true" data-val-date="The field ValidationValidFrom must be a date." data-val-required="The ValidationValidFrom field is required." id="ValidationValidFrom" name="ValidationValidFrom" type="datetime" value="0001-01-01 00:00:00">
最佳答案
EditorFor
生成输入并将值设置为模型属性的值。
在本例中,模型的属性为 model.ValidationValidFrom
.
未经确认,这很可能是一个 DateTime,即:
public class MyModel {
public DateTime ValidationValidFrom { get; set; }
如果未给日期时间指定值,则为默认值:0001-01-01。
您可以在 Controller 中设置值:
[HttpGet]
public ActionResult MyView() {
var model = new MyModel();
model.ValidationValidFrom = DateTime.Today; // or .Now to include time
return View(model);
<小时/>
js的原因defaultDate
没有从 0001-01-01 更改它是因为 <input>
已经有一个值,因此不能设置为“默认”。
您可以通过将属性更改为 DateTime?
来更改此设置并将其保留在 Controller 中为空。这将生成一个输入 value=""
然后js应该给它一个默认值。
关于javascript - MVC.NET 中 Bootstrap 日期选择器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39343627/