CSHTML отображение пользовательских вводов

#c# #html #razor #input

#c# #HTML #razor #ввод

Вопрос:

В моем веб-задании меня попросили создать страницу входа на сайт знакомств и отобразить информацию, я завершил HTML до определенной точки и теперь начинаю с C #. Я начал это, но зашел в тупик, поскольку я не знаю, что происходит не так при отображении информации.

Мой вопрос: как мне заставить «fName» отображаться в «сообщении», так как при его отправке появляется текст, но при вводе его в текстовое поле и отправке имени нет.

C#

 @{
string message = "";
string fName;

fName = Request.Form["fName"];
string daySelect = Request.Form["submit"];

message = String.Format("Your first name is: {0}", Request.Form["fName"]);
}
  

HTML

 <form method="post">
<label for="fName"></label>
First Name: <input type="text" name="fName" id="fName" 
@(Request.Form["fName"]) /> <br/>

<br/><br/><input type="button" value="submit" />
<p>@message</p>
  

Ответ №1:

Я рекомендую изучить ASP.NET MVC и как модели передаются от контроллера к их представлениям. Это делает то, что вы делаете здесь, намного проще и менее подвержено ошибкам. Существует несколько руководств.

Просто взглянув на ваш HTML-код, причиной может быть отсутствующий атрибут value в поле ввода. Пожалуйста, попробуйте

 First Name: <input type="text" name="fName" id="fName" value="@(Request.Form["fName"])" /> <br/>
  

Комментарии:

1. Я попытался использовать предложенное вами значение, однако, похоже, оно не работает, я изучу ASP.NET MVC — O.P

Ответ №2:

Я нашел проблему.

Вот сообщение, которое у меня есть в:

 <br/><br/><input type="button" value="submit" />
  

Как вы можете видеть, кнопка типа is, для этого кода она должна иметь тип «отправить», крошечная ошибка в большом количестве кода.
Спасибо rboe за помощь.