我正在尝试将两个DateTime和一个Bool从一个复选框传递给我的控制器
控制器操作:
[HttpPost]
public ActionResult TestParse(DateTime DateFrom, DateTime DateTo, bool active)
这是我的剃刀观点:
@using (Html.BeginForm("TestParse", "Sags", FormMethod.Post))
{
<input type="checkbox" name="active">
<input type="date" name="DateFrom">
<input type="date" name="DateTo">
<input type="submit" value="Submit">
}
它找到了控制器,但它没有传递值,它们都是null execpt for active,这是“true”我怎样才能获得这些值?
答案 0 :(得分:0)
您可以创建视图模型以一起修补字段
public class SomeViewModel
{
public DateTime DateFrom { get; set; }
public DateTime DateTo { get; set; }
public bool Active { get; set; }
}
表格
@model Namespace.SomeViewModel
@using (Html.BeginForm("TestParse", "Sags", FormMethod.Post))
{
@Html.CheckBoxFor(m => m.Active)
@Html.TextBoxFor(m => m.DateFrom)
@Html.TextBoxFor(m => m.DateTo)
<input type="submit" value="Submit">
}
然后在你的控制器中
[HttpPost]
public ActionResult TestParse(SomeViewModel model)
您可以使用一些js库来设置日期选择器的样式