2017-05-12 371 views
0

我想在MVC5中使用ajax單獨重新加載部分視圖。 這是我在頁面佈局MVC如何刷新佈局頁面中的部分視圖

<div class="col-md-2 col-sm-5 col-xs-12 shopping_cart pull-right">       
     @{ Html.RenderAction("ViewCart", "Cart"); } 
    </div> 

代碼從購物車控制器查看購物車返回

public ActionResult ViewCart() 
{ 
    //code 
    return PartialView("ViewCart", CartList); 
} 

我有一個函數添加項目到購物車。在行動中,我將更新的項目返回到局部視圖。但它不是呈現更新的視圖。特殊的div不重新加載。

 <script type="text/javascript"> 

      $(".addToCart").click(function (event) { 
       //prevent default action from the link provided in html 
       event.preventDefault(); 

       $.ajax({ 
        url:$(this).attr("onclick"), 
        success:function(){ 
         alert("Product added to cart"); 
        } 
       });//ajax end 

      });//end click 
     </script> 



    public ActionResult(decimal pid, decimal cnt) 
    { 
    //code to add items into table 
    return RedirectToAction("ViewCart"); 
    } 

如何重新加載特定視圖,而無需重新加載整個頁面

+1

使用ajax加載函數。 –

回答

0

使用jQuery加載功能

 function loadPartialView() { 
      //load cartitems to div 
      $('#cart').load('/Cart/ViewCart/');   
     }; 

     $(function() { 
      loadPartialView(); // first time 
      // re-call the function each 5 seconds 
      window.setInterval("loadPartialView()", 5000); 
     }); 

    </script> 
0

做了你設置ID來DIV

<div id="cartdetails" class="col-md-2 col-sm-5 col-xs-12 shopping_cart pull-right">       
    @{ Html.RenderAction("ViewCart", "Cart"); } 
</div> 

阿賈克斯sucess在添加以下代碼:

$("#cartdetails").load("/Cart/ViewCart"); 
相關問題