Hi
try this example to validate uploaded file extenstion using AJAX AsynFileUpload control
<script type=”text/javascript”>
function uploadError(sender, args) {
//Good practice to put try,catch block. it will avoid javascript error at window status.
try
{
$get(“dvFileErrorInfo”).style.display=’block’;
$get(“dvFileInfo”).style.display=’none’;
$get(“<%=lblError.ClientID%>”).innerHTML = “File Not Uploaded” + args.get_errorMessage();
}
catch(e)
{
alert(e.message);
}
}
function uploadComplete(sender, args) {
try
{
var fileExtension=args.get_fileName();
var gif =fileExtension.indexOf(‘.gif’);
var png =fileExtension.indexOf(‘.png’);
var jpg =fileExtension.indexOf(‘.jpg’);
var jpeg =fileExtension.indexOf(‘.jpeg’);
if( gif > 0 || png > 0 || jpg > 0 || jpeg > 0)
{
$get(“dvFileInfo”).style.display=’block’;
$get(“dvFileErrorInfo”).style.display=’none’;
$get(“<%=lblSuccess.ClientID%>”).innerHTML = “File Uploaded Successfully”;
}
else
{
$get(“dvFileErrorInfo”).style.display=’block’;
$get(“<%=lblError.ClientID%>”).innerHTML = “Allowed File extension are {.gif,.png,.jpg,.jpeg} supported”;
$get(“dvFileInfo”).style.display=’none’;
return;
}
}
catch(e)
{
alert(e.message);
}
}
</script>
<div>
<asp:ScriptManager runat=”Server” EnablePartialRendering=”true” ID=”ScriptManager1″ />
<cc1:AsyncFileUpload ID=”afuUpload” OnClientUploadError=”uploadError” OnUploadedComplete=”afuUpload_UploadedComplete”
OnUploadedFileError=”afuUpload_UploadedFileError” runat=”server” OnClientUploadComplete=”uploadComplete”
Width=”400px” UploaderStyle=”Modern” UploadingBackColor=”#CCFFFF” ThrobberID=”myThrobber” />
<asp:Label runat=”server” ID=”myThrobber” Style=”display: none;”>
<img align=”absmiddle” alt=”" src=”Images/uploading.gif” />
</asp:Label>
<div style=”border-style: solid; display: none; width: 350px” id=”dvFileInfo”>
<asp:Label ID=”lblStatus” Font-Bold=”true” runat=”server” Text=”Status:-” /><asp:Label
ID=”lblSuccess” ForeColor=”Green” runat=”server” /><br />
</div>
<div style=”border-style: solid; display: none; width: 350px” id=”dvFileErrorInfo”>
<asp:Label ID=”lblErrorStatus” Font-Bold=”true” runat=”server” Text=”Status:-” /><asp:Label
ID=”lblError” ForeColor=”Red” runat=”server” /><br />
</div>
</div>
and in code behind :-
public void afuUpload_UploadedComplete(object sender, AsyncFileUploadEventArgs e)
{
try
{
string savePath = MapPath(“~/Images/” + Path.GetFileName(e.filename));
/*Validation for file extension*/
bool gif =Path.GetExtension(e.filename).Contains(“.gif”);
bool png =Path.GetExtension(e.filename).Contains(“.png”);
bool jpg =Path.GetExtension(e.filename).Contains(“.jpg”);
bool jpeg =Path.GetExtension(e.filename).Contains(“.jpeg”);
if (gif || png || jpg || jpeg)
{
afuUpload.SaveAs(savePath);
}
else
{
return;
}
}
catch (Exception ex)
{
throw ex;
}
}
public void afuUpload_UploadedFileError(object sender, AsyncFileUploadEventArgs e)
{
//ScriptManager.RegisterClientScriptBlock(this, this.GetType(), “error”, “top.$get(\”" + lblErrorStatus.ClientID + “\”).innerHTML = ‘Error: ” + e.statusMessage + “‘;”, true);
}
Hope this helps
Good Luck