2011-05-12 4 views
0

업데이트 패널에 Ajax 비동기 파일 업로드 컨트롤이 있습니다. 업로드가 잘되었지만 업로드가 완료되면 업로드 한 이미지를 볼 필요가 있습니다.비동기 파일 업로드 파일 미리보기가 표시되지 않습니다.

<ajaxToolkit:AsyncFileUpload ID="AsyncFileUpload1" Width="400px" runat="server"  
     OnClientUploadError="uploadError"  
     OnClientUploadStarted="StartUpload" 
     OnClientUploadComplete="UploadComplete" 
     CompleteBackColor="Lime" UploaderStyle="Modern"  
     ErrorBackColor="Red" ClientIDMode="AutoID"  
     ThrobberID="Throbber"  
     UploadingBackColor="#66CCFF" 
      onuploadedcomplete="AsyncFileUpload1_UploadedComplete" /> 

<asp:Label ID="Throbber" runat="server" Style="display: none"> 
<asp:Image runat="server" ID="imgPreview" ImageUrl="~/Images/uploading.gif" /> 
     </asp:Label> 
     <img runat="server" id="imageView1"/> 
<asp:Label ID="lblStatus" runat="server" Style="font-family: Arial; font-size: small;"></asp:Label> 
+0

당신은 몇 가지 코드를 보여줄 수 있습니까? – David

+0

이 질문을 편집 해주세요. – pinki

답변

2

OnUploadedComplete 이벤트를 사용하여 이미지를 표시 할 수 있습니다.

미리보기이 예를 살펴 표시하는 방법에 대한 자세한 내용은
<ajaxToolkit:AsyncFileUpload ID="AsyncFileUpload1" Width="400px" runat="server" OnUploadedComplete="ProcessUpload" 

protected void ProcessUpload(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e) 
{ 
string fileName = Server.MapPath("./") + "image.jpg"; 
AsyncFileUpload1.SaveAs(fileName); 

ScriptManager.RegisterClientScriptBlock(AsyncFileUpload1, AsyncFileUpload1.GetType(), "img", 
    "top.document.getElementById('imgUpload').src='image.jpg';", 
    true); 
} 

: AJAX File Upload in ASP.NET with the AsyncFileUpload Control

+0

안녕하세요.하지만 내 코드가있는 경우 이미 OnUploadedComplete 이벤트가 있는데이 코드는 정확히 내 코드에서 수행했지만 여전히 왜 작동하지 않는지는 알 수 없습니다. – pinki

1

나는 생각하지 않는다 "~"HTML 컨트롤을 작동합니다 그러나 여기서 일 나던 내가

function UploadComplete(sender, args) { 
     var filename = args.get_fileName(); 
     var contentType = args.get_contentType(); 
     if (contentType.indexOf('image') == -1) { 
      document.getElementById('<%=lblStatus.ClientID%>').innerText = "Uploaded file must be an Image!"+ "<span style='color:red;'>" + args.get_errorMessage() + "</span>"; 
      document.getElementById('<%=AsyncFileUpload1.ClientID%>').text.style.backgroundColor = "Red"; 
     } 
     else { 
      var text = "" + filename + "  |  " + args.get_length() + " bytes"+"Uploaded Succesfully"; 
      document.getElementById('<%=lblStatus.ClientID%>').innerText = text; 
       $get("imageView1").src = "./~/" + filename; 
     } 
    } 

AspCode을했을 것입니다. 경로를 실제 경로로 변환하고 이미지 src를 설정하십시오.

관련 문제