2013-05-08 2 views
0

ajax를 통해 모달 내부의 부분 뷰를로드합니다. 그런 다음 부분 뷰에서 게시하지만 리디렉션하지 않고 결과를 원래 페이지로 되돌리고 싶습니다. 이 작업을 수행하는 방법을 파악하는 데 문제가 있습니다. 여기 내 코드가있다.부분보기 Ajax 다시로드하지 않고 게시보기

일반보기

<div id="modal-container" class="modal hide fade"> 
    <div id="modal-inner"></div> 
</div> 

// Calls Partial View and displays it in modal 
@Ajax.ActionLink("New Project", 
       "Upload", 
       "Image", 
       null, 
       new AjaxOptions 
       { 
        InsertionMode = InsertionMode.Replace, 
        UpdateTargetId = "modal-inner" 
       }, 
       new { @class = "btn btn-primary", data_toggle="modal" }) 

@using(Html.BeginForm()) { 
    // Stuff 
} 

PartialView 컨트롤러

public PartialViewResult Upload() 
{ 
    return PartialView(); 
} 

부분보기

@model IEnumerable<HttpPostedFileBase> 
<script src="/Scripts/custom/modal-submit.js"></script> 

<div class="modal-header"></div> 

<div class="modal-body"> 
    <div class="row-fluid"> 
     <div class="span12"> 

      // After submit return to regular view 
      @using (Html.BeginForm("Upload", "Image", FormMethod.Post, new { enctype = "multipart/form-data", id = "modal-form" })) 
      { 
       <input type="file" name="images" multiple="multiple" accept="image/*" /> 
       <input type="submit" id="modal-submit" /> 
      } 
     </div> 
    </div> 
    // Rest of modal 

일부 게시물보기 컨트롤러

[HttpPost] 
    public ActionResult Upload(IEnumerable<HttpPostedFileBase> images) 
    { 
     // Do stuff 
     // Return somehow to original view 
    } 
+0

마지막 조치는 무엇을 반환해야합니까? –

+0

그건 내가 알아 내려고하는 부분입니다. 뷰를 반환하면 새 페이지에서 부분 뷰가 다시 반환됩니다. – Jeff

+0

메시지 또는 상태 코드를 반환하기 만 하시겠습니까? 아니면 새로운 부분과 같이 특정 부분이 필요합니까? –

답변

0

일반적으로 Ajax.Beginform을 사용합니다. 그러나 Ajax를 통해 파일을 업로드 할 수 없으므로 이것이 가능하지 않다고 생각합니다.

관련 문제