2012-02-29 71 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