0
任何人都可以幫助我的查詢。我希望只能通過AjaxFileUpload工具將某些文件類型上傳到服務器。有服務器端驗證,但我想驗證客戶端上的文件類型。允許的文件類型爲Ajax文件上傳
我已經使用上傳工具的AllowedFileTypes方法,像這樣:
但是它只允許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" />
任何幫助將不勝感激。
如果有人遇到了類似的問題,這是與AjaxControlToolkit問題,只需要安裝一個新的版本。 – user2560913