Как установить значение суммы в другом текстовом поле с помощью ASP MVC - PullRequest
0 голосов
/ 06 марта 2019

Я пытаюсь установить сумму двух текстовых полей для другого текстового поля с помощью ASP.NET MVC, я знаю, что это выглядит легко, но я не знаком с MVC.Я только что сделал это, просто используя @ViewBag.mensaje.Это мой код:

Модель :

public class suma
{
    public int n1 { get; set; }
    public int n2 { get; set; }
    public int total { get; set; }
}

Контроллер:

  // GET: suma

  public ActionResult Index()
  { 
      return View();
  }

  [HttpPost]
  public ActionResult Index(Models.suma model) 
  {
        int x = model.n1;
        int y = model.n2;
        int total = model.total;
        total = x + y;
        ViewBag.mensaje = (total).ToString();
        return View();
  }

Просмотр:

@model bonito2.Models.suma

@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>Index</h2>

@using (Html.BeginForm("Index", "suma", FormMethod.Post))
{

    @Html.TextBoxFor(model => model.n1)<br />
    @Html.TextBoxFor(model => model.n2)<br />
   <input type="submit" value="Submit" /> <br />

    @ViewBag.mensaje
}

Мой код работает OK , но я пытаюсь это сработать или установить значение для текстового поля не в @ViewBag.mensaje.Спасибо.

Ответы [ 2 ]

1 голос
/ 06 марта 2019

Вы можете просто сделать следующее:

public class suma
{
    public int n1 { get; set; }
    public int n2 { get; set; }
    public int total => n1 + n2;
}

Затем в html:

@Html.TextBoxFor(model => model.total)
0 голосов
/ 06 марта 2019

код JS

 $(document).ready(function() {
        //this calculates values automatically 
        sum();
        $("#n1, #n2").on("keydown keyup", function() {
            sum();
        });
    });
function sum() {
            var num1 = document.getElementById('n1').value;
            var num2 = document.getElementById('n2').value;
            var result = parseInt(num1) + parseInt(num2);
            if (!isNaN(result)) {
                document.getElementById('total').value = result;
            }
        }

и добавьте это в html

<input type="text" name="total" id="total" readonly />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...