首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AsyncFileUpload控件

AsyncFileUpload控件
EN

Stack Overflow用户
提问于 2010-11-25 16:17:58
回答 3查看 1.9K关注 0票数 1

关于.net中的AsyncFileUpload控件,一旦我选择了一个文件,该控件就会执行文件上传。我关心的是,一旦我选择了一个文件,是否可以禁用上传,以便我可以使用提交按钮异步处理上传。

EN

回答 3

Stack Overflow用户

发布于 2012-10-18 02:07:45

我知道这是旧的,但我在这方面绞尽脑汁了一段时间,所以对于任何可能感兴趣的人。

我的第一个想法是禁用控件下面的文件输入。

我可以禁用控件,但不幸的是,它停止工作。当服务器触发AsyncFileUpload_UploadComplete时,输入被禁用,因此没有文件可读。

代码语言:javascript
复制
<script>
function disableFileUpload(on) {
    if (on) {
        $('#ajax-file-input input:file').attr('disabled', true);
    } else {
        $(#ajax-file-input 'input:file').attr('disabled', false);
    }
}
function AsyncFileUpload_CheckExtension(sender, args) {
    disableFileUpload(true);
    return true;
}
function AsyncFileUpload_OnClientUploadComplete(sender, args) {
    disableFileUpload(false);
    var data = eval('(' + args.d + ')');
    for (var key in data) {
        var obj = data[key];
        for (var prop in obj) {
            console.log(prop + " = " + obj[prop]);
        }
    }
    doThingsWith(data);
}
</script>
<div id="ajax-file-input">
<ajaxToolkit:AsyncFileUpload ID="AsyncFileUpload1" 
                    OnUploadedComplete="AsyncFileUpload_UploadComplete"
                    OnClientUploadStarted="AsyncFileUpload_CheckExtension" 
                    OnClientUploadComplete="AsyncFileUpload_OnClientUploadComplete" 
                    runat="server" />
</div>

我最终在控件的顶部放置了一个半透明的png,并显示和隐藏它,以使控件不可访问。

希望这能有所帮助。

代码语言:javascript
复制
function disableFileUpload(on) {
    if (on) {
        $("#file-disabled").show();
    } else {
        $("#file-disabled").hide();
    }
}
票数 1
EN

Stack Overflow用户

发布于 2010-11-25 17:44:50

据我所知,AsyncFileUpload唯一公开的事件是UploadComplete事件和UploadError。没有特定的事件公开手动启动上载的功能。也许JavaScript中的一些技巧可以做到这一点,但我以前从未见过这样的变通方法。

票数 0
EN

Stack Overflow用户

发布于 2010-11-26 02:56:00

简单的回答是不。我也遇到过类似的异步上传问题。我的建议是,如果你需要用一个按钮控制上传,添加和删除选定的文件(你稍后可能会用到这些),并使用一些javascript操作,那就离他远点。

Search for the SWFUpload,是一个可以轻松与.NET集成的闪存组件。它提供了多个javascript选项和事件。:D

检查以下链接:

Official site

Demonstration

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4274934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档