才开始使用MVC 4&我不知道如何做以下事情。
我有一个显示博客文章列表'/ blog'的页面,此页面还包含一个包含日期列表的选择列表,选择一个日期应该自动将表单发布到像'/ blog / date /这样的URL 20-05-2015'此URL路由到控制器中的ActionResult,该控制器返回该日期的博客文章列表。
我不知道如何让我的表单自动发布到'/ blog / date / 20-05-2015'这样的网址
ROUTE:
routes.MapRoute(
"blogsByDates",
"blog/date/{date}",
new { controller = "Blog", action = "IndexByDate" }
);
CONTROLLER
public ActionResult IndexByDate(DateTime date)
{
var query = from c in db.Blogs
where c.PublishDate >= date
select c;
return View("Index", query.ToList());
}
查看(部分)
@using (Html.BeginForm())
{
<select name="ddlMonth" id="ddlMonth">
<option value="01-06-2012">June 2012</option>
<option value="01-05-2012">May 2012</option>
</select>
}
答案 0 :(得分:1)
您必须使用jQuery或其他东西来更改表单的ACTION属性。没有其他方法可以将表单发布到目的地。虽然您没有向服务器发送任何特殊数据时使用表单的原因。只需将其列为可点击链接即可。