Отображение окна сообщения (оповещения) после отправки формы - PullRequest
0 голосов
/ 16 декабря 2018

У меня есть форма в asp.net mvc. Я хочу показать предупреждение, когда пользователь отправляет форму.

public ActionResult AddMessage(Message message)
{
       If(ModelState.IsValid) 
       {
                db.Messages.Add(message);
                db.SaveChanges();
                return RedirectToAction(“Index”);
       }
       else
       {
                return View();
       }
}

1 Ответ

0 голосов
/ 16 декабря 2018

Метод alert - это метод JavaScript, который должен выполняться браузером на стороне клиента.

Поскольку вы выполняете обычную отправку формы и хотите показать предупреждение, когда ModelState.IsValidЭто правда, вы должны сделать это внутри представления, возвращаемого действием index.

Вы можете использовать TempData для передачи некоторых данных между вашим текущим кодом метода действия и методом действия / представлением, представленным ответом перенаправления.

public ActionResult AddMessage(Message message)
{
    If(ModelState.IsValid) 
    {
        db.Messages.Add(message);
        db.SaveChanges();
        TempData["Message"] = "Saved successfully";
        return RedirectToAction(“Index”);
    }
    else
    {
        return View();
    }
}

и в представлении, возвращаемом действием Index, вы можете проверить наличие TempData["Message"] и, если да, прочитать его и показать в виде предупреждения.

@section Scripts
{
  <script>
         @if(TempData["Message"]!=null)
         {
              @:alert("@TempData["Message"]");
         }  
  </script>
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...