3

在我当前的项目中,我使用了AJAX Control Toolkits 中的AsyncFileUpload控件。在我让异步文件上传部分工作后,我需要过滤文件类型,以便用户只能上传图像文件。我在网上找到了以下代码,它运行良好:

function uploadStarted(sender, args) {  
        var filename = args.get_fileName();  
        var filext = filename.substring(filename.lastIndexOf(".") + 1);  
        if (filext == "jpg" || filext == "jpeg" || filext == "gif" || filext == "bmp")      {
            return true;
        }
        else 
        {  
            // force uploading cancel  
            args.set_cancel(true);  
            // set reason of cancel  
            args.set_errorMessage("Invalid File Format Selected");  
            return false;  
        }  
    } 

问题是:我不明白这个javascript。args参数的类型是什么?“get_fileName()”、“set_cancel()”等方法定义在哪里?我去了AsyncFileUpload控件的主页,但找不到任何关于“args”的文档。

有人可以帮我解释一下这个 Javascript 吗?谢谢

4

1 回答 1

2

我想我可以回答我自己的问题

第一个参数标识触发事件的对象,而第二个参数提供有关正在上传的文件的信息。事实上,它包含五个使用上面演示的 get_abc() 语法访问的有用属性。

  • get_fileName() 和 get_path() 都返回正在上传的文件的名称
  • get_length() 在上传后返回文件的大小(以字节为单位)。上传前返回 null
  • get_contentType() 上传文件后返回文件的 MIME 类型。上传前返回 null
  • 如果发生错误,get_errorMessage() 会返回一条错误消息。否则返回 null

有关更多详细信息,请参阅这篇文章:

http://p2p.wrox.com/content/blogs/danm/enter-asyncfileupload-control

于 2010-05-26T22:55:54.850 回答