2016-08-11 66 views
-1

我想重定向到AFER的執行動作創建方法重定向到行動asp.net MVC

所以創建方法返回:

return Json(new 
      { 
       Data = base.RenderView("_Forme ", model), 
       Message = (string)TempData[TEMP_DATA_MESSAGE_KEY], 
       Result = (AjaxResultType)TempData[TEMP_DATA_CODE_KEY] 

      }, JsonRequestBehavior.AllowGet); 

     } 

佈局頁:

 <div> @Html.Partial("_Forme") </div> 
     @if (@Model.nouveau==false) 
      { 
       <div> @Html.Partial("_Onglet") </div> 
       <div> @Html.Partial("_Details") </div> 
      } 

**在查看中:_Forme.cshtml **

<a href="@Url.Action("Create", "Uneform")" 

    @if (Model.nouveau==true) 
     { Create} 
     { Update } 
</a> 

我希望能夠刷新佈局頁面並顯示所有部分視圖。 我已經嘗試重定向到使用JavaScript的行動沒有工作,任何幫助

回答

0

如果你想只刷新佈局頁面的一部分,包裝在一個容器div,並進行ajax調用獲取新的標記爲這方面

<div id="updatable"> 
@if (@Model.nouveau==false) 
{ 
    <div> @Html.Partial("_Onglet") </div> 
    <div> @Html.Partial("_Details") </div> 
} 
</div> 

,並在你的Ajax調用的success事件,您可以使用$.load方法

$("#updatable").load("/Home/GetUpdatedHeader"); 

假設GetUpdatedHeader操作方法返回它具有的局部視圖其他2個部分。


如果你只是想重新加載相同的頁面,你可以在JavaScript中做到這一點。

window.location.href = window.location.href; 

你可以做到這一點是在你的Ajax調用的success事件。

如果你想重定向到另一個動作/頁

window.location.href ="/Home/Index"; //Replace this value with your url 

您還可以發送的網址爲您的新的一頁JSON響應(您可以使用UrlHelper建立的網址),並利用它來進行重定向。

+0

我只想在(model.nouveau == false) –

+0

的情況下重新加載佈局頁面然後,您需要使用ajax進行更新。請參閱已更新的答案 – Shyju

+0

好吧,我該如何將參數傳遞給GetUpdatedHeader方法? –