【发布时间】:2023-04-08 13:25:02
【问题描述】:
在 asp.net MVC 中使用 ajax 时出现以下错误,我不知道它有什么问题!
第 161 行第 101 列的 JavaScript 严重错误 http://localhost:50474/Home/Products\n\nSCRIPT1006: 应为 ')'
这是我的观点:
<p class="text-center"><a class="btn btn-primary" onclick="CreateOrder(@pr.ProId)" role="button">خرید</a>
这是我在控制器中的操作:
[HttpPost]
public ActionResult CreateOrder(Guid productId)
{
Order or = new Order();
or.Number = 1;
or.ProductId = productId;
or.SessinId = Request.UserHostAddress;
int proprice = db.Products.Where(c => c.ProId == productId).Select(c => c.Price).FirstOrDefault();
or.TotalPrice = proprice * 1;
db.Orders.Add(or);
db.SaveChanges();
int count = (db.Orders.Where(c => c.SessinId == or.SessinId).Select(c =>
c.OrderId)).Count();
Session["ShopcartCount"]= count;
db.Dispose();
return RedirectToAction("Products", "Home");
}
这里是ajax代码:
<script>
function CreateOrder(productId) {
$.ajax({
url: "/Home/CreateOrder/" + productId,
type: "post"
}).done(function (result) {
$("#shopcart").html(result);
});
}
$(function () {
$("#shopcart").load("/Home/ShopCartCount");
});
</script>
【问题讨论】:
-
JavaScript 文件的
line 161, column 101处的代码是什么?请也出示一下。 -
这部分视图:onclick="CreateOrder(@pr.ProId)"
-
试试这个方法 onclick="CreateOrder(@(pr.ProdId))"
-
所以你正在传递
GUIDJavascript 考虑作为字符串对象期望数值传递目录。请检查此<p class="text-center"><a class="btn btn-primary" onclick="CreateOrder('@pr.ProId')" role="button">خرید</a> -
在我的演示中,我已经检查过了,然后我告诉你你的代码可能有问题,你能检查一下吗?或者请查看此链接dotnetfiddle.net/h05cci
标签: javascript ajax asp.net-mvc asp.net-ajax