我想让一个FileUpload控件隐藏,当点击一个按钮时让FileUpload控件相应,弹出文件选择对话框,选择文件后将文件路径放在TextField框中部分代码如下:function f()
 {
        var fu=document.getElementById("fluWenJian");
        fu.click();
        document.getElementById("txtfile").innerText=fu.value;
 }
<ext:Panel ID="panel3" runat="server" Height="40" Border="false" >
                    <Content>
                        <asp:FileUpload ID="fluWenJian" runat="server"/>
                    </Content>
                    <Items>
                     <ext:CompositeField ID="cm" runat="server" HideLabel="true">
                     <Items>
                       <ext:TextField ID="txtfile" runat="server" AllowBlank="false" Width="300"></ext:TextField> 
                       <ext:Label ID="l1" runat="server" Html="&nbsp"></ext:Label>
                       <ext:Button ID="btngetfile" runat="server" Text="浏览..." Icon="Attach">
                        <Listeners>
                            <Click Handler="f();" />
                         </Listeners>
                       </ext:Button>
                       </Items>
                       </ext:CompositeField>
              </Items>
                </ext:Panel><ext:Button runat="server"  ID="btFaSong" Text="发送">
                 <DirectEvents>
                    <Click OnEvent="btnfileClick" Before="return checkForm(#{fpwjcs});"/>
                 </DirectEvents>
             </ext:Button>  
当我点击按钮 btFaSong 发送时 就报错htmlfile:拒绝访问。。也查了资料,还是没找到解决办法,大家帮下忙,告诉下怎么解决,最好有代码,或者有其他更好的方法替换实现上传也行

解决方案 »

  1.   

    其实不用这么麻烦,后台动态生成一个FileUpLoad控件即可。这样可以向页面注册多个FileUpload控件
      

  2.   

    FileUpload控件应当是监控了鼠标点击的位置。一些常用的自定义上传的方式往往都是使用的模拟点击的方式。试想,如果不通过点击FileUpload里面的“浏览”而选择文件再上传,这样的话,是不是只要弄一个网页,你电脑上的文件就能够毫无知觉地上传到网站服务器上?这是一个多大的漏洞?
    但有些网站采用的是Flash上传,建议楼主可以试着去了解一下。
      

  3.   


    Upload控件大全