У меня есть текстовое поле в моем представлении. Я ввожу номер в текстовое поле, а затем я хочу, чтобы контроллер умножал число и помещал результат в текстовое поле.Как обновить значение текстового поля
Как я могу это сделать?
Это то, что я уже сделал. Давайте начнем с обзором:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Index</title>
</head>
<body>
<div>
<h2>Please enter a number</h2>
<% using (Html.BeginForm()) { %>
<%=Html.TextBox("number")%>
<input type="submit" value="Index" name ="Index" />
<% } %>
</div>
</body>
</html>
Как вы можете видеть, у меня есть простое текстовое поле и кнопка.
Это мой контроллер:
using System.Web.Mvc;
namespace MvcApplication1.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(int number)
{
number = number * 2;
ViewData["number"] = number;
return View(ViewData);
}
}
}
Но ничего не происходит. Да, я вижу, что сообщение выполняется, а закодированные шаги - public ActionResult Index(int number)
. Я вижу, что число взято из текстового поля, оно умножено правильно.
Я попытался использовать ViewData, как вы можете видеть. Я также использовал TempData. Это еще один код для текстового поля в представлении я пробовал:
<%=Html.TextBox("number", ViewData["number"])%>
Но это не имеет значения. Текстовое поле не обновляется с новым значением. Как я могу это сделать?
ok Благодарим за ответ! – Thomas