首页 > 解决方案 > RadAsyncUpload OnClientValidationFailed 无故触发

问题描述

Telerik 论坛上有人问过这个问题。

我有一个 RadAsyncUpload 并且 OnClientValidationFailed 的函数被调用并出现错误的文件大小错误,即使文件完全在大小限制内。

标记

<telerik:RadAsyncUpload runat="server" ID="fUploader" PostbackTriggers="btnSendEmail,btnSaveDraft" OnClientValidationFailed="fileUploadValidationFailed"></telerik:RadAsyncUpload>

服务器端

fUploader.TargetFolder = 上传路径;

fUploader.AllowedFileExtensions = New String() {" .jpg"、". png "、". gif"、". jpeg"、". bmp"、". tiff"、". pdf"、". gpx"、" *.tcx"}

fUploader.MaxFileSize = 2500000

javascript

function fileUploadValidationFailed(sender, args) {
var fileExtention = args.get_fileName().substring(args.get_fileName().lastIndexOf('.') + 1, args.get_fileName().length);
if (args.get_fileName().lastIndexOf('.') != -1) {//this checks if the extension is correct
    if (sender.get_allowedFileExtensions().indexOf(fileExtention.toLowerCase()) == -1) {
        alert("File type selected is not allowed.  Valid file types are .jpg, .png, .gif, .jpeg, .bmp, .tiff, .pdf, .gpx, .tcx");
    }
    else {
        alert("File too large.  Max file size 2 MB.");
    }
}
else {
    alert("File type selected is not allowed.  Valid file types are .jpg, .png, .gif, .jpeg, .bmp, .tiff, .pdf, .gpx, .tcx");
}}

网络配置

<system.web>
    <httpRuntime maxRequestLength="8192"/>
</system.web>

标签: javascriptc#telerik

解决方案


答案是 Telerik:RadAsyncUpload 将不支持 dot(.) 和 star(*)

请参阅示例: AsyncUpload - 通过 AJAX 上传文件

在此处输入图像描述


推荐阅读