0
asyncfileupload
컨트롤을 사용하고 있으며 이미지 만 받아들이고 싶습니다. accept 속성을 사용했지만 작동하지 않고 OnClientUploadComplete
이벤트를 사용하여 컨텐츠 유형을 catch하고 서버 측에서 업로드를 중지하면 이벤트가 실행되지 않아 OnUploadedComplete
이 실행되지 않습니다! 그리고 나는 그것을 서버 측에서 업로드하는 것을 멈출 방법을 모른다. 나는 OnUploadedComplete
이벤트에서 contentType
을 확인하려고했는데, 그 이벤트는 실행되고 'else'로 이동하지만 보여줄 메시지가 표시되지 않습니다. 어떠한 제안?AsyncFileUpload에서 이미지 파일 만 허용 Asp.Net Webforms
C# 코드 :
`protected void fileUpload_UploadedComplete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
{
if (fuImage.HasFile)
{
string contentType = fuImage.ContentType;
if (contentType == "image/jpeg" || contentType == "image/gif"
|| contentType == "image/png")
{
string fileName = Path.GetFileName(e.FileName);
string fileUploadPath = Path.Combine(Server.MapPath("~/images/Resturant"), fileName);
fuImage.SaveAs(fileUploadPath);
var url = "~/images/Resturant/" + fileName;
ScriptManager.RegisterStartupScript(this, this.GetType(), "fileName",
"top.$get(\"" + hdfImagePath.ClientID + "\").value = '" + url + "';", true);
}
else
{
ucMessage1.MessageTitle = "Error Message";
ucMessage1.MessageDetail = "Please Choose a valid image!";
ucMessage1.MessageImage = "X";
ucMessage1.Show();
}
}
}`
디자인 :
<ajaxToolkit:AsyncFileUpload ID="fuImage" runat="server" OnUploadedComplete="fileUpload_UploadedComplete" />
그래서이 이벤트에서 업로드를 롤백 할 수 있습니까? 또는 심지어 제어 배경을 변경합니까? –
@RadwaAbdEllah 파일 이름과 경로가 있기 때문에 가능하다고 생각합니다. 따라서 형식 서버 측을 검사 할 수 있고 원하는 형식이 아닌 경우 이미지 (파일 및 db 레코드가있는 경우)를 삭제하십시오. – Mahdi
이제 파일이 올바른 형식이 아닌 경우 컨트롤의'backColor'를'red'로 변경하고 싶습니다. 나는 if 루프에서 아무 것도 변경하지 않는다고 썼다. 'fuImage.BackColor = System.Drawing.Color.Red; ' –