下面的代码是注册新用户的提交按钮
<div class="col-md-10">
<form method="POST">
<input type="submit" id="" value="Register" class="buttonRegister btn btn-default" style="width: 200px; height: 50px; font-size: 25px"/>
</form>
</div>
这是将新用户注册到数据库的 Controller 。当用户成功注册时,他们需要使用 javascript 在模态弹出部分 View 中查看 ViewBag.ErrorMessage
我认为返回包含 ViewBage.ErrorMessage 的部分 View 是最好的主意。
public class RegisterController : Controller
{
// GET: Register
public ActionResult Index()
{
return View("Index");
}
/// <summary>
/// Indexes the specified model.
/// </summary>
/// <param name="model">The model.</param>
/// <returns></returns>
[HttpPost]
public ActionResult Index(PatientScreeningAssignment.Models.Register model)
{
ViewBag.ErrorMessage = null;
ViewBag.ErrorMessage = "Oops something went wrong...";
if (!ModelState.IsValid) return PartialView("~/Views/Shared/_PartialMessage.cshtml");
try
{
//Add new staff to the database
Patient_Screening_Library.Database_Methods.Register.RegisterNewStaff(model.EmailAddress.ToUpper(), model.Password.ToUpper().Trim(),
model.FisrtName.ToUpper(), model.SurName.ToUpper(),
model.JobTitle.ToUpper(),
model.PhoneNumber, model.PagerNumber, model.DateOfBirth
);
//Return Message success
ViewBag.ErrorMessage = null;
ViewBag.ErrorMessage = "Successfully registered user!";
return PartialView("~/Views/Shared/_PartialMessage.cshtml");
}
catch (Exception e)
{
ViewBag.ErrorMessage = null;
ViewBag.ErrorMessage = e.Message;
return PartialView("~/Views/Shared/_PartialMessage.cshtml");
}
}
}
这是在 _PartialMessage View 中
<!DOCTYPE html>
<head>
</head>
<body>
@ViewBag.ErrorMessage
</body>
当我单击位于注册 View 中的提交按钮时,我希望这是一个弹出模式表单
最佳答案
试试这个
在你的部分。
<head>
</head>
<body onload="popupMyMsg('@ViewBag.ErrorMessage')">
</body>
<script>
function popupMyMsg(msg)
{
alert(msg);
}
</script>
或者在您的注册中重定向
<body onload="popupMyMsg('@ViewBag.ErrorMessage')">
</body>
<script>
function popupMyMsg(msg)
{
if(msg != null && msg!="")
alert(msg);
}
</script>
关于javascript - 当用户成功/未成功注册时如何在模式弹出窗口中打开消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158458/