Ajax.ActionLink接收服务端返回值,根据返回值执行操作

前端之家收集整理的这篇文章主要介绍了Ajax.ActionLink接收服务端返回值,根据返回值执行操作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、切记,页面必需要引用 jquery.unobtrusive-ajax.min.js。

前端

  1. @Ajax.ActionLink("***","AddItem","shop",new { t=new Random().NextDouble() },new AjaxOptions
  2. {
  3. HttpMethod = "Get",OnBegin = "OnBegin",OnSuccess="OnSuccess",OnComplete = "OnComplete"
  4.  
  5. })

脚本

  1. function OnBegin() {
  2. //弹出遮罩层,防止用户在服务器响应期间的其他误点击
  3. }
  4.  
  5. function OnSuccess(data) {
  6. alert(data);//接收action传来的返回值
  7. }
  8.  
  9. function OnComplete() {
  10. //关闭遮罩层
  11. }


后台方法

  1. [HttpGet]//对应ActionLick中的http方法
  2. public string AddItem(int? productId)
  3. {
  4. int ProductID=productId ?? 0;
  5. if(!Common.CheckProduct(ProductID))
  6. return "nodata";
  7. //TUser UserModel=System.Web.HttpContext.Current.Session["UserModel"] as TUser;
  8. TProduct product = TProductConnection.GetById(ProductID);
  9. TShoppingCart item = new TShoppingCart();
  10. item.BuyNumber = 1;
  11. //item.UserID = UserModel.UserID;
  12. item.UserID = 1;
  13. item.IsDel = 0;
  14. item.ProductID = ProductID;
  15. item.ProductName = product.ProductName;
  16. item.Price = product.Price;
  17. item.AddTime = DateTime.Now;
  18. TShoppingCartConnection.Add(item);
  19. try
  20. {
  21. UnitOfWork.Commit();
  22. return "success";
  23. }
  24. catch
  25. {
  26. return "fail";
  27. }
  28. }

猜你在找的Ajax相关文章