控制器中的ActionResult没有被调用。这一页很清爽。检查我的代码如下:
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<fieldset>
@if (@ViewBag.Message != null)
{
<p style="color: #b94a48;">@ViewBag.Message</p>
}
@Html.HiddenFor(model => model.Id)
<div class="form-group">
<label class="control-label visible-ie8 visible-ie9">Username</label>
<div class="input-icon">
<i class="fa fa-user"></i>
@Html.TextBoxFor(model => model.UserName, new { @placeholder = "Email", @class = "form-control placeholder-no-fix" })
<p style="color: #b94a48;">@Html.ValidationMessageFor(model => model.UserName)</p>
</div>
</div>
<div class="form-group">
<label class="control-label visible-ie8 visible-ie9">Password</label>
<div class="input-icon">
<i class="fa fa-lock"></i>
@Html.PasswordFor(model => model.Password, new { @placeholder = "Password", @class = "form-control placeholder-no-fix" })
<p style="color: #b94a48;">@Html.ValidationMessageFor(model => model.Password)</p>
</div>
</div>
<div class="form-actions">
<div>
<label class="checkbox">
@Html.CheckBoxFor(model => model.RememberMe, new { @class = "remember" }) Remember me
</label>
</div>
<button type="submit" class="btn blue pull-right">
Login <i class="m-icon-swapright m-icon-white"></i>
</button>
</div>
</fieldset>
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Login(AccountViewModel model, FormCollection args, string ReturnUrl)
{
}RouteConfig:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("SJSS", "{controller}/Show/{assetCode}/{action}/{id}", new { controller = "Asset", action = "Index", id = UrlParameter.Optional });
routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Account", action = "Home", id = UrlParameter.Optional });发布于 2013-12-10 11:15:41
尝试将您的@Html.BeginForm更改为:
@Html.BeginForm("***Action Name***", "***Controller Name***", FormMethod.Post)
{
}发布于 2013-12-10 11:12:59
我在这里可能弄错了,但是尽管你的代码有点混乱,我还是找不到你发到的网址,我的意思是,你的表单操作是空的,即使你提交了,mvc怎么知道该调用哪个操作呢?
尝试在Html.BeginForm上设置操作和控制器参数。
编辑:查看@的答案,看看一个可能完全适合您的案例。
发布于 2013-12-10 11:16:23
您需要为您的表单指定一个"Action“、"Controller”和"Form method“。见以下代码:
@using (Html.BeginForm("Login", "Account", FormMethod.Post))
{
}https://stackoverflow.com/questions/20492065
复制相似问题