我正在学习ASP.NET MVC。提交表单后,我想在主视图上的“提交”按钮下以部分视图显示成功消息。
<form action="myactionLInk" method="post">
<input type="text" name="Name" placeholder="Enter name here..."/>
<input type="submit" value="Submit" />
</form>
// Here would be some code to load partialview
<div>
@Html.Partial("_userpartial")
</div>
这是我的UserContoller
:
[HttpPost]
public ActionResult userData(FormCollection collection)
{
//Save name, email and contact to ViewBag
return PartialView("_userPartial")
}
这里是_userPartial.cshtml
:
<p> Data of @Viewbag.Name successfully saved.</p>
我希望成功创建后将部分视图加载到“提交”按钮下。我仍在学习MVC,因此希望能获得任何帮助。
答案 0 :(得分:1)
为什么需要局部视图才能显示此成功消息?您可以简单地执行以下操作:
正如您所说的,您是ASP.NET MVC的新手,所以在这里,我为您提供了一个完整的解决方案,说明如何在创建实体后显示成功消息。
首先编写一个模型类,如下:
public class User
{
[Key]
public int UserId {get; set;}
[Required]
public int UserName {get; set;}
}
然后在User
控制器中:
public class UserController: Controller
{
[HttpGet]
public ActionResult CreateUser()
{
return View();
}
[HttpPost]
public ActionResult CreateUser(User user)
{
if(ModelState.IsValid)
{
// save the user here
ViewBag.SuccessMessage = user.UserName + " has been created successfully!"
ModelState.Clear();
return View();
}
return View(user);
}
}
然后在您的CreateUser.cshmtl
视图中:
@using User
@using (Html.BeginForm("CreateUser", "User", FormMethod.Post))
{
@Html.EditorFor(m => m.UserName)
<input type="submit" value="Submit" />
}
@{
if(ViewBag.SuccessMessage != null)
{
<div>
@ViewBag.SuccessMessage
</div>
}
}
希望它会对您有所帮助。