2016-06-14 4 views
0

Может ли кто-нибудь помочь с моим запросом. Я хочу иметь возможность разрешать загрузку определенных файлов только на сервер с помощью инструмента AjaxFileUpload. Существует проверка на стороне сервера, но я хочу проверить типы файлов на клиенте.Разрешенные типы файлов для загрузки файла Ajax

Я использовал метод AllowedFileTypes инструмента загрузки так:

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

Однако это только позволяет PDF-файлы, которые будут загружены. Он не позволит jpg или docx. Есть ли причина, почему или ошибка в инструменте AjaxFileUpload, о котором все знают.

Есть ли другой способ сделать это? Я использовал следующий JavaScript для проверки типов файлов:

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; 
} 

и изменил AjaxFileUpload соответственно, но это не работает:

    <asp:AjaxFileUpload ID="AjaxFileUpload1" runat="server" OnUploadComplete="OnUploadComplete" OnClientUploadComplete="ValidateFile" ThrobberID="Throbber" ClientIDMode="AutoID" /> 

Любая помощь будет принята с благодарностью ,

+0

Если кто-то попадается подобной проблеме это была проблема с AjaxControlToolkit и просто необходимо установить новую версию. – user2560913

ответ

0

Эта функция AjaxFileUpload это Разрешенные типы файлов

<ajaxToolkit:AjaxFileUpload ID="AjaxFileUpload1" OnUploadComplete="AjaxFileUpload1_UploadComplete" runat="server" AllowedFileTypes="jpeg,jpg,png,gif,pdf,zip,rar,ZIP,RAR" MaximumNumberOfFiles="5" /> 
Смежные вопросы