Как показать сообщение об успехе после успешной отправки формы - PullRequest
0 голосов
/ 27 января 2019

Я изучаю 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, поэтому любая помощь приветствуется.

1 Ответ

0 голосов
/ 27 января 2019

Зачем вам нужно частичное представление, чтобы показать это сообщение об успехе? Вы можете сделать просто следующим образом:

Как вы сказали, вы совсем новичок в 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>
  }
}

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...