AJAX 비동기 파일 업로드를 사용하여 사용자 이미지를 추가하고 있습니까? 비동기 업로드가 완료되면 이미지를 업데이트하고 싶습니다. 이 작업을 수행하는 코드에서 upImage.Update()를 사용하고 있지만 업데이트를 수행하지 않는 것 같습니다.UpdatePanel이 업데이트되지 않습니다.
모든 코드가 오류없이 실행되며 JS 콘솔에 오류가 없습니다. 어떤 도움을 주시면 감사하겠습니다! 감사.
영문 파일 : 잘못된 이미지 URL을 가지고 같은
<h2>That's You
<ajax:AsyncFileUpload ID="afuUserImage" runat="server"
OnUploadedComplete="uploadComplete"
UploadedFileError="uploadError"
Width="200px"
UploadingBackColor="#b9b9b9"
CompleteBackColor="#00FF00"
ErrorBackColor="#FF0000"
ThrobberID="theLoader"
ClientIDMode="AutoID"
CssClass="" />
</h2>
<div id="userSettingsImage" runat="server" class="userSettingsImage">
<asp:updatepanel ID="upImage" runat="server" UpdateMode="conditional" ChildrenAsTriggers="false" >
<ContentTemplate>
<asp:Image ID="imgUser" runat="server" ImageUrl="~/graphics/blankuser.jpg" />
</ContentTemplate>
</asp:updatepanel>
</div>
그리고 뒤에있는 코드 ....
protected void uploadComplete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
{
try
{
// change photo in space and upload to user photo
if (afuUserImage.HasFile)
{
string strPath = Server.MapPath("~/users/" + this.Context.User.Identity.Name + "/userimages/" + this.Context.User.Identity.Name + ".jpg");
if (File.Exists(strPath))
{
File.Delete(strPath);
}
afuUserImage.SaveAs(strPath);
imgUser.ImageUrl = imgUser.ImageUrl + "?new" + String.Format("{0:ddMMyyyy}", DateTime.Now);
upImage.Update();
Lifeklips_Global.eComms.showMessage("All done!");
}
else
{
Lifeklips_Global.eComms.showMessage("Oops! This is embarrassing. Your update didn't work, but we're looking into it. Give it another go.");
}
}
catch (Exception ex)
{
Lifeklips_Global.errorProcess.logError("Error uploading file: " + ex.Message, "Lifeklips.UserControls.singlephotouploader:uploadComplete");
}
}
[이미지 태그가 UpdatePannel에서 업데이트되지 않음] (http://stackoverflow.com/questions/9995399/image-tag-not-updating-inside-the-updatepannel) – Pankaj