【发布时间】:2019-05-04 17:35:09
【问题描述】:
我有一个添加到购物车的部分视图,我需要添加所选商品的价格来计算总价。 我想要做的是,当我单击添加到购物车时,AddtoCart 部分视图会使用新的选定商品价格自行更新。
加入购物车部分视图
@model OnlineShopping.MyViewModel
<div class="alert alert-primary" role="alert">
Added to Cart<br />
Total: 0 @Model.SumVM.ToString()
我有一个产品表,其中包含产品详细信息(id、价格、详细信息、图像)
产品局部视图
@model OnlineShopping.MyViewModel
foreach (Product item in Model.ProductsV)
{
<tr>
<td scope="row"><img src="@Url.Content(@item.ProductImage)"
width="150" height="200" /></td>
<td>
@item.ProductName
<br />Price : @item.ProductPrice $<br />
@item.ProductDetails
</td>
<td><button type="button" class="btn-outline-primary">Add
to cart </button></td>
</tr>
}
加入购物车方法
public ActionResult AddtoCart(int sum)
{
var viewModel = new MyViewModel
{
SumVM = SumVM + sum
};
return View(viewModel);
我尝试将添加到购物车按钮更改为类似的内容:
<button type="submit" value="@item.ProductPrice" class="btn-outline-
success" name="sum" onclick="location.href='@Url.Action("AddtoCart", "Home")'" >Add
To cart </button>
但由于“sum”变量的空引用,它无法正常工作。
【问题讨论】:
-
您没有将
sum作为所需参数发送到AddtoCart方法。您需要在Url.Action中指定它。像这样的东西:Url.Action("AddtoCart", "Home", new { sum = sumValue }); -
还是不行
标签: c# asp.net-mvc model-view-controller asp.net-ajax