模型绑定到日期选择器jQuery UI在asp.net mvc 3
问题描述:
我已经使用jQuery UI Helpers
日期选择器使用以下代码。模型绑定到日期选择器jQuery UI在asp.net mvc 3
<div>
<label for="date">Select a date:</label> @Html.JQueryUI().Datepicker("date")
</div>
但我怎样才能用这个帮手来绑定同一个模型:
<div class="editor-label">
@Html.LabelFor(model => model.BirthDate)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.BirthDate)
@Html.ValidationMessageFor(model => model.BirthDate)
</div>
因此,该值将被保存到数据库中。
我已经在数据库中使用的FormCollection像下面保存出生日期的岗位价值:
[HttpPost]
public ActionResult Edit(User user,FormCollection PostData)
{
if (ModelState.IsValid)
{
db.Users.Attach(user);
user.BirthDate = DateTime.Parse(PostData["date"]);
UpdateModel(user);
//db.ObjectStateManager.ChangeObjectState(user, EntityState.Modified);
db.SaveChanges();
return RedirectToAction("Details");
}
ViewBag.RoleID = new SelectList(db.Roles, "ID", "Name", user.RoleID);
return View(user);
}
答
尝试使用这样的:
<script>
$(function() {
$("#BirthDate").datepicker();
});
</script>
感谢,它显示日期选择器。现在,不必在控制器上使用FormCollection – CodeManiac
Hello Kapil,在这里,DatePicker采用默认时间值(6/6/2012 12:00:00 AM)但我需要删除时间并只显示日期。雅,它可以使用'ToShortDateString()'完成。但是如何使用这个函数,因为我有'@ Html.DisplayFor(model => model.BirthDate)'来显示出生日期。我也看过数据库,它只显示日期而不显示时间。我只需要显示日期。我是mvc 3的新手,对于单一的轻微修改真的很迷惑。 – CodeManiac