MVC3 Razor Html.TextBox для вычисляемых полей - PullRequest
2 голосов
/ 09 июля 2011

В конечном итоге я хотел бы рассчитать поля, такие как Вес * Цена.

Предположим, у меня есть MVC3:

    @Html.TextBoxFor(modelItem => item.Package.USDKg)
    @Html.HiddenFor(modelItem => item.Pricing.VolumePrice)

Могу ли я рассчитать их напрямую? Или прибегнуть к JQuery? Мне бы очень хотелось, чтобы цены оставались «скрытыми» даже в исходном виде, если это возможно.

Обычно, когда пользователь вводит вес своего пакета, будет отображаться цена (рассчитанная на основе скрытых значений ценового пункта).

Спасибо за ваше руководство.

Ответы [ 2 ]

2 голосов
/ 09 июля 2011

Имея бритву, вы можете сделать логику прямо внутри разметки!

@{
   var value = model.Item.Value;
   var price = model.Item.Proce;
   var calculated = value * price;
}

<div class="price>Your price: @calculated</div>

Более подробная информация здесь:

http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx

1 голос
/ 09 июля 2011

Да, вы можете сделать это так:

function calculate(){
   var weight = parseFloat($("#Package_USDKg").val());
   var price = parseFloat($("#Pricing_VolumePrice").val());
   var calculus = weight * price;
   $("#calculus").text(calculus); //This shows the calculated field
}

$(document).ready(function(){
  calculate(); //Calculate on page load
  $("#Package_USDKg").change(calculate);  //Calculate every time weight changes
});

Я предполагаю, что у вас есть div с id="calculus", чтобы показать вычисленное поле.

Надеюсь, это поможет.Приветствия

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...