当用户在$middleware
页面成功提交时,我想在Index
页面上显示成功提交的消息。
我的Register
行动包括:
Register
我的[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult SaveRegister(AirlineWebApplication.Models.User User, HttpPostedFileBase file)
{
db.Users.Add(User);
db.SaveChanges();
return RedirectToAction("Index");
}
视图包括以下内容。
Register
如何显示成功的消息&#34;您已成功注册&#34;当我按下<section class="registersection">
<div class="container-fluid">
<div class="row">
<div class="signupForm">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
@using (Html.BeginForm("SaveRegister", "Users", FormMethod.Post)) {
@Html.ValidationSummary(true)
@Html.AntiForgeryToken()
<div class="editor-field">
<label>Name
@Html.EditorFor(model => model.user_name)
</label>
@Html.ValidationMessageFor(model => model.user_name)
</div>
<div class="editor-field">
<label>Password
@Html.EditorFor(model => model.password)
</label>
@Html.ValidationMessageFor(model => model.password)
</div>
<p>
<input type="submit" value="Register" />
</p>
}
</div>
</div>
</div>
</div>
</section>
按钮时,在Index
页上?
答案 0 :(得分:0)
在Visual Studio中创建新项目时,您可以看到如何显示确认消息的示例。
您可以创建一个新视图,比如RegisterConfirmation
,然后在您的控制器中,更改最后一行:
return RedirectToAction("Index");
为:
return View("RegisterConfirmation");
编辑建议不要在主Index
页面上显示消息。如果您想这样做,则需要将消息传递到Index
页面:
string message = "You have registered successfully";
return RedirectToAction("Index", "Home", new { m = message });
然后在index
页面的控制器中,您需要从查询字符串中获取消息并将其添加到模型或ViewBag
:
public ActionResult Index(string m) {
ViewBag.Message = m;
}
最后在index
视图中,您可以在页面上的div
中显示消息:
<div>@ViewBag.Message</div>
或者,您可以将div
设为弹出式窗口。使用CSS非常简单。
如果您不想使用查询字符串(可能更好),可以使用TempData
代替:
TempData["Message"] = "You have registered successfully";
return RedirectToAction("Index", "Home");
在Index
视图中:
<div>@TempData["Message"]</div>
答案 1 :(得分:0)
有很多方法可以做到这一点。例如,在您的控制器中使用TempData来了解您的来源:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult SaveRegister(AirlineWebApplication.Models.User User,
HttpPostedFileBase file)
{
db.Users.Add(User);
db.SaveChanges();
TempData["Referrer"] = "SaveRegister";
return RedirectToAction("Index");
}
在索引视图中:
@if((string)TempData["Referrer"] == "SaveRegister")
{
<div class="alert alert-success">
<strong>You have registered successfully</strong>
</div>
}
与ViewBag不同,TempData会持久保存到下一个请求,以便它适合重定向到不同的页面并从那里检索值。