【发布时间】:2011-07-26 11:53:58
【问题描述】:
我一直在寻找一种直接的方式来提示错误消息,最好是弹出窗口,(javascript 或其他)给在此表单上登录系统失败的用户:
@model Blog.Models.ViewModels.LoginView
<!DOCTYPE html>
<html>
<body>
@using (Html.BeginForm()) {
<p>Your name: @Html.TextBoxFor(x => x.name) </p>
<p>Your password: @Html.TextBoxFor(x => x.password)</p>
<input type="submit" value="Login" />
}
</body>
</html>
但我发现的大多数示例都在标签上使用 onclick 方法。相反,我希望它由这个控制器处理:
private BlogModel model = new BlogModel();
[HttpPost]
public ActionResult LoginForm(string name, string password)
{
SysUser user = model.SysUsers.Where(x => x.SysUserName == name).First();
{
if (user != null && user.SysPassword == password)
{
Session["usrn"] = name;
return RedirectToAction("LoginSuccessful", "Users");
}
else
{
//display error//
}
}
【问题讨论】:
-
使用
Ajax.BeginForm()而不是Html.BeginForm() -
在 TempData 的页面中添加一点脚本
标签: c# javascript asp.net asp.net-mvc-3