In this article I will show to show JavaScript alert message in asp.net from mvc Controller. The message from the controller displayed as alert message using ViewBag. It will simply return alert on pageload.
Step 1: Create an asp.net mvc project and right click on the controller folder and create a new controller and name it as HomeController. Inside the HomeController copy and paste the following code.
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(string name)
{
ViewBag.Message = String.Format("Hello{0}.\\ncurrent Date and time:{1}", name, DateTime.Now.ToString());
return View();
}
Step 2: Right click on the Share folder and create a razor view named as index. Copy and paste the following code.
<div style="border: 1px solid gray; height: 310px; width: 450px">
<h2>Alert Message From Controller</h2>
@using (Html.BeginForm("Index", "Alert", FormMethod.Post))
{
<input type="text" id="txtName" name="name" />
<input type="submit" id="btnSubmit" value="Get Current Time" />
}
@if (ViewBag.Message != null)
{
<script type="text/javascript">
window.onload = function () {
alert("@ViewBag.Message");
document.getElementById("txtName").value= "@ViewBag.Message";
};
</script>
}
</div>
Description:
Here I am displaying current server datetime in the JavaScript alert messge using ViewBag object from the mvc controller action method.