【发布时间】:2020-09-18 23:23:40
【问题描述】:
我正在尝试从控制器获取数据以查看并使用 ajax 接收它,这是我的操作:
public JsonResult addtocart(int id)
{
var Product = db.Product.SingleOrDefault(c => c.id == id);
var Cart = new Cart();
ProductCart pc = new ProductCart()
{
Product = Product,
Cart = Cart
};
pc.Cart.added_at = DateTime.Now;
pc.Cart.product_id = pc.Product.id;
db.Cart.Add(pc.Cart);
db.SaveChanges();
return Json(pc.Product, JsonRequestBehavior.AllowGet);
}
当我为其中一种产品按下“添加到购物车”按钮并且我想将其添加到包含表格的模式时,它的类是“myjxT”,这是我的 ajax:
$('.addtocart').click(function () {
var name = $(".item-name").text();
var price = $(".item-price").text();
$.ajax({
method :'GET',
url: "/Product/addtocart",
dataType: JSON,
cache: false,
data: { "Name": name, "Price": price },
success: function (data) {
var content = "";
for (var x in data) {
content = "<tr><td>" + data[x].Name + "</td><td>" + data[x].Price + "</td></tr>"
}
$(".myjxT").html(content);
},
error: function (msg) {
alert("something wrong");
}
});
});
但是当我点击“添加到购物车”时它什么也不做,它会将我引导到这个 URL:“Product/addtocart/35”,其中 35 是产品 ID,并且页面包含产品的 json 对象:
{"Category":{"id":11,"name":"kikii","number_of_products":3},"id":35,"name":"Samsung Galaxy M31","price":8000,"image":"Samsung Galaxy M31.jpg","description":"t is a long established ","CategoryId":11}
这是 foreach 循环内的“添加到购物车”按钮:
@Html.ActionLink("Add to cart", "addtocart", new { id = item.id }, new { @class = "btn btn-danger addtocart", @style = "width:90px;background-color:rgb(60, 60, 60)" })
【问题讨论】:
-
分享html,添加到点击和表单,如果你用过
-
@AhmedSunny 再检查一次,我没有添加到购物车的表单,只有一个按钮
标签: javascript jquery ajax asp.net-mvc model-view-controller