MVC как вывести модифицированный текст в код HTML из input при перезагрузке страницы?

Добрый день.
Только начал осваивать MVC. Осваиваю по оф документам и сайту metanit.com

HTML
@using (Html.BeginForm("Index", "Home", FormMethod.Post))
{
   <div class="form-group">
          <input type="email" class="form-control input-lg" id="exampleInputEmail2" placeholder="Your Email*">
   </div>
   <button type="submit" class="btn btn-info button">Подпишитесь</button>
   <p>@ViewData["Test"]</p>
}


Контролер HomeController
public IActionResult Index(string exampleInputEmail2)
        {
            ViewData["Test"] = exampleInputEmail2 + "_ТестТекст";
 
            return View();
        }


При первой загрузке страницы значение пустое и ничего не выводиться. После нажатия кнопки, страница должна обновиться и на странице должна появиться надпись из Input с изменениями.

Здесь хочу вывести текст
<p>@ViewData["Test"]</p>

Может кто-нибудь поправить мой код до рабочего состояния? И показать как использовать метод, если он тут необходим.
  • Вопрос задан
  • 122 просмотра
Решения вопроса 1
@defond Автор вопроса
Модель:
public class UserContainer
    {
        public string Fam { get; set; }
        public string Name { get; set; }
        public string Name2 { get; set; }
 
        public UserContainer(string F, string N, string N2)
        {
            Fam = F; Name = N; Name2 = N2;
        }
    }


Контроллер:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Vasya.Models;
 
namespace Vasya.Controllers
{
    public class HomeController : Controller
    {
        [HttpGet]
        public ActionResult Index()
        {
            UserContainer UCon = new UserContainer("","","");
            return View(UCon);
        }
 
        [HttpPost]
        public ActionResult Index(string Fam, string Name, string Name2)
        {
            UserContainer UCon = new UserContainer(Fam, Name, Name2);
            return View(UCon);
        }
 
    }
}


HTML5
@model System.Data.DataTable

<div>
        Привет, @Model.Fam &nbsp @Model.Name &nbsp @Model.Name2
       <form action="/Home/Index" method="post"> 
          <p><input class="text-box single-line" size = 20 id ="N1" name ="Fam" type ="text" value = "@Model.Fam" /> </p>
          <p><input class="text-box single-line" size = 20 id ="N2" name ="Name" type ="text" value = "@Model.Name" /> </p>
          <p><input class="text-box single-line" size = 20 id ="N3" name ="Name2" type ="text" value = "@Model.Name2" /> </p>
          <input type="submit" id="SendButton" value="Ok" />
       </form>
 
    </div>


Нашел решение, может кому то пригодиться. Решение рабочее, всё работает отлично!
П.С,: Самому себе отвечать на вопрос на Тостере - это конечно сильно. )
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы