2011-01-07 4 views
0

ASP.NET MVC 및 jQuery ThickBox. ThickBox에 일부 콘텐츠가 표시됩니다. 그것은하지 Thickbox와의 정상 창에 을 보여줍니다 내가 /업로드/멀티미디어 행동 및 콘텐츠로 리디렉션 파일 업로드 후ThickBox - 리디렉션없이 내부에서 업데이트

<form action="/upload/multi-media" method="post" enctype="multipart/form-data"> 
    <label for="file">File name:</label><br /> 
    <input type="file" name="file" id="file" /><br /> 
    <input type="submit" value="Upload" /> 
</form> 
<% if (Model.Count > 0) { %> 
    <% foreach (FileInfo mediaFile in Model) { %> 
    <img width="100px" height="100px" 
     src="<%:ResolveUrl("~/audio.png") %>" border="0" alt="<%: mediaFile.Name %>" />    //................ 

뷰 멀티 media.apsx 파일 업로드 양식을 포함하고 있습니다.

파일 업로드 후 어떻게 ThickBox에 머무를 수 있습니까? 나는 파일을 업로드 한 후에도 항상 ThickBox에 콘텐츠를 표시해야합니다.

업데이트 : ajax 파일 업로드. 어쨌든 ThickBox를 다시로드하십시오. 왜?

멀티 media.apsx

 <div id="mydiv"> 
     <% Html.RenderPartial("MultiMediaDetails", Model); %> </div> 

MultiMediaDetails.ascx

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<List<FileInfo>>"%> 
    <%@ Import Namespace="System.IO" %> 
<% using (Ajax.BeginForm("multi-media", "upload" , 
    new AjaxOptions { UpdateTargetId = "mydiv", HttpMethod = "Post" }, new { enctype = "multipart/form-data" })) 
{ %> 

    <label for="file">File name:</label><br /> 
    <input type="file" name="file" id="file" />&nbsp; 
    <input type="submit" value="Upload" /> 

<% }%> 

<% if (Model.Count > 0) 
    { 
    foreach (FileInfo mediaFile in Model) 
     { 
      //................... .............."/> 
+0

4 자 공백이 들여 쓰기 코드입니다. '<'가 지원됩니다. – Jacob

답변

1

당신은 HTML 파일이 아약스를 통해 업로드 할 수 없어, 그래서 그는 페이지를 다시로드하지 않으려면 iframe에 업 로더를 배치하거나 SWFUpload와 같은 플래시 업 로더를 사용하십시오.

+0

왜 Ajax를 통해 HTML 파일을 업로드 할 수 없습니까? 나는 할 수 없다는 것을 알지만, 왜 그럴까요? ThickBox가 부모 창에 값을 반환하기 때문에 iframe을 사용할 수 없습니다. – Alexandre

+0

JavaScript/HTML이 그렇게 설계된 이유가 확실하지 않습니다. 실제로 Ajax가 시작하도록 설계되지 않았습니다. – Jacob

+0

타겟 잠재 고객에게 옵션 인 경우 어쨌든 플래시 업 로더를 사용하는 것이 좋습니다. HTML 파일 업로드가 매우 어렵습니다 (매우 쉽게 스타일을 지정할 수없고 한 번에 하나의 파일 만 업로드 할 수 있고 포스트 백이 필요하며 파일 브라우저에 표시된 파일 유형을 제어 할 수없고 진행 콜백이없는 등). 플래시 업 로더 (SWFUpload는 훌륭함)를 사용하여 잠재적 인 슬픔으로부터 자신을 구할 수 있습니다. – Jacob

관련 문제