Ajax文件上载的允许文件类型

时间:2016-06-14 10:55:31

标签: javascript ajax

任何人都可以帮助我查询。我希望能够仅允许使用AjaxFileUpload工具将某些文件类型上载到服务器。有服务器端验证,但我想验证客户端上的文件类型。

我使用了上传工具的AllowedFileTypes方法,如下所示:

fixed-form

但是它只允许上传pdf文件。它不会允许jpg或docx。 AjaxFileUpload工具中是否存在任何人都知道的原因或错误。

还有其他办法吗?我使用以下javascript来验证文件类型:

<asp:AjaxFileUpload ID="AjaxFileUpload1" runat="server" OnUploadComplete="OnUploadComplete" ThrobberID="Throbber" ClientIDMode="AutoID" AllowedFileTypes="jpg,pdf,docx" />

并相应地更改了AjaxFileUpload,但它无法正常工作:

var validFilesTypes = ["docx", "jpg", "pdf"];
function ValidateFile()
{
  var file = document.getElementById("<%=AjaxFileUpload1.ClientID%>");
  var label = document.getElementById("<%=lblStatus.ClientID%>");
  var path = file.valueOf;
  var ext=path.substring(path.lastIndexOf(".")+1,path.length).toLowerCase();
  var isValidFile = false;
  for (var i=0; i<validFilesTypes.length; i++)
  {
    if (ext==validFilesTypes[i])
    {
        isValidFile=true;
        break;
    }
  }
  if (!isValidFile)
  {
    label.style.color="red";
    label.innerHTML="Invalid File. Please upload a File with" +
     " extension:\n\n"+validFilesTypes.join(", ");
  }
  return isValidFile;
 }

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

此功能AjaxFileUpload允许文件类型

  <ajaxToolkit:AjaxFileUpload ID="AjaxFileUpload1"   OnUploadComplete="AjaxFileUpload1_UploadComplete" runat="server"  AllowedFileTypes="jpeg,jpg,png,gif,pdf,zip,rar,ZIP,RAR" MaximumNumberOfFiles="5" />