2012-02-29 54 views
0

我有一個名稱,CreatedDate,地址等視圖。在地址部分我有州,城市等我做了這個部分的部分視圖。在MVC中刪除部分視圖

默認情況下,mainView中會有一個地址部分。我有一個按鈕「AddAddress」。如果用戶單擊按鈕(添加部分視圖),我想添加另一個地址部分。得到這個局部視圖後,應該有一個刪除按鈕來刪除這個局部視圖。我沒有使用剃刀。

以下代碼是我的Javascript刪除我的地址。

 function deleteAddress(addressId, clientId) { 
      var url1 = "/Client/DeleteAddress"; 
      if (confirm("Are you sure you want to delete this address?")) { 
       var result = false; 
       $.ajax({ 
        url: url1, 
        type: 'POST', 
        async: false, 
        data: { AddressId: addressId, ClientId: clientId }, 
        dataType: 'json', 
        success: function (data) { 
         result = data; 
        }, 
        error: function (XMLHttpRequest, textStatus, errorThrown) { 
         alert("XMLHttpRequest=" + XMLHttpRequest.responseText + "\ntextStatus=" + textStatus + "\nerrorThrown=" + errorThrown); 
        } 
       }); 
       if (result) { 
       } 
      } 
     } 

以下代碼在我的控制器中。

[HttpPost] 
public JsonResult DeleteAddress(int AddressId, int ClientId) 
    { 
     if (AddressId != 0) 
     { 
      if (ClientId != 0) 
      { 
       ClientService.Client clientVuTemp = new ClientService.Client(); 
       clientVuTemp = (ClientService.ClientView)TempData["EditClientData"]; 

       clientVuTemp.Address.RemoveAt(AddressId); 
       //soft delete 
       clientVuTemp.Address[AddressId].IsActive = false; 
       _clientSvc.InserOrUpdateClientAddresses(clientVuTemp.Address); 
      } 
      else 
      { 

      } 
      return Json(true); 
     } 
     else 
      return Json(false); 
    } 

回答

0

在模型中,我們可以有一個像IsAddAddressEnabled的屬性,ONCLICK上AddAddress你可以設置爲真實的onclick上取消你可以設置爲假。

在View你可以把一個條件,

@if(Model.IsAddAddressEnabled) 
{ 
    Html.Partail(....) 
} 
+0

我想做到這一點使用AJAX/javascript.page shud沒有回傳 – Santosh 2012-02-29 11:31:13

+0

OK,你可以做類似的操作,但只得到了視圖JsonResult和更新與內容的觀點 – Manas 2012-02-29 12:27:28