加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 通过Button控制Fire AsyncFileUpload

发布时间:2020-12-16 09:36:00 所属栏目:asp.Net 来源:网络整理
导读:我想通过页面中的另一个控件触发AsnyncFileUpload控件. 我使用ASP.NET AJAX工具包中的AsyncfileUpload并通过JQuery隐藏它.并在其旁边放置一个按钮.甚至当我单击此按钮并选择一个文件我想要触发AsycnFileUpload并上传文件. 我编写了大部分代码,但是当我选择文
我想通过页面中的另一个控件触发AsnyncFileUpload控件.

我使用ASP.NET AJAX工具包中的AsyncfileUpload并通过JQuery隐藏它.并在其旁边放置一个按钮.甚至当我单击此按钮并选择一个文件我想要触发AsycnFileUpload并上传文件.

我编写了大部分代码,但是当我选择文件时出现Javascript错误.

(错误:访问被拒绝;

PLACE:setTimeout(function(){
????????????????????????mainForm.submit(); //这里错误;
????????????????????????uploader._waitTimer = setTimeout(function(){uploader._wait()},100);
????????????????????},0);

<asp:Button ID="btnFileUpload" runat="server" Text="Add" onclientclick="FileUploadClick(); return false;"/>
<ajaxToolkit:AsyncFileUpload  runat="server" ID="AsyncFileUpload1" Width="400px" UploaderStyle="Modern" UploadingBackColor="#CCFFFF"/>

这是我的Javascript(我看到了控件生成的标记,并获得了文件输入
通过附加“_ct102”键入

function FileUploadClick() {
            var fileUploadControl = document.getElementById('<%= AsyncFileUpload1.ClientID %>' + '_ctl02')
            fileUploadControl.click();
            //fileUploadControl.setActive();                
        }

解决方法

我对此进行了更多研究,发现无法做到这一点.
由于安全原因,禁用从其他控件触发文件类型输入.所以这件事无法完成.

仅对样式文件上载控件进行样式处理的方法是将控件置于不透明度0并将控件置于此文件控件下并更改HTML中的Z-index.
事实上,这是AsyncFileUpload控件使用的确切技巧.

这是解释诀窍的链接
http://www.quirksmode.org/dom/inputfile.html

所以我在AsyncFileUpload上应用了这个技巧,它在内部将它应用于HTML文件上传控件

谢谢大家

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读