我有3个文本框,第1个用于数量,第2个用于价格,第3个用于总价格。
<div class="form-group">
@Html.LabelFor(model => model.quantity, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.quantity, new { htmlAttributes = new { @class = "form-control", @type = "number" } })
@Html.ValidationMessageFor(model => model.quantity, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.price, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.price, new { htmlAttributes = new { @class = "form-control", @type = "number" } })
@Html.ValidationMessageFor(model => model.price, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.totalprice, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.totalprice, new { htmlAttributes = new { @class = "form-control", @type = "number" } })
@Html.ValidationMessageFor(model => model.totalprice, "", new { @class = "text-danger" })
</div>
这是控制器:
[HttpPost]
public ActionResult Add(Model model)
{
obj.Quantity = model.quantity;
obj.Price = model.price;
obj.TotalPrice = model.totalprice
db.Details.Add(obj);
db.SaveChanges();
return RedirectToAction("");
}
现在我想将第1和第2个文本框的值相乘,并在第3个文本框中显示它们。例如,如果用户在第一个文本框中输入5,在第二个文本框中输入100,则在第三个文本框中自动显示500,如果用户更改第一个或第二个文本框的值,则第三个文本框的值也应相应地更改。 感谢。
答案 0 :(得分:4)
您可以在javascript中收听文本框的keyup
事件,读取值并进行乘法,并将结果值设置为第三个文本框。
假设您的页面中包含jQuery库。
$(function(){
$("#quantity,#price").keyup(function(e){
var q=$("#quantity").val();
var p=$("#price").val();
var result="";
if(q!=="" && p!=="" && $.isNumeric(q) && $.isNumeric(p))
{
result = parseFloat(q)*parseFloat(p);
}
$("#totalPrice").val(result);
});
});
Here是一个有效的jsbin样本。
答案 1 :(得分:0)
您可以使用:
[HttpPost]
public ActionResult Add(Model model)
{
obj.Quantity = model.quantity;
obj.Price = model.price;
obj.TotalPrice = model.totalprice
model.totalprice = model.quanity * model.price
db.Details.Add(obj);
db.SaveChanges();
return RedirectToAction("");
}
希望它有所帮助。我在我的应用程序中使用它并且它做了正确的事情。