代码之家  ›  专栏  ›  技术社区  ›  Himadri

当文件上传控制在updatepanel下时,如何上传图像?

  •  2
  • Himadri  · 技术社区  · 17 年前

    当fileupload在updatepanel下时,如何上传图像?

    4 回复  |  直到 17 年前
        2
  •  1
  •   Pete    17 年前

    这是不可能的。出于安全原因,浏览器不允许javascript上传文件。

    对于这个问题,有两种常见的解决方法:

    • 在iFrame中执行上传
    • 使用flash插件进行上传

    http://valums.com/ajax-upload/ 它会自动为您创建一个iFrame,并发布该框架,并将生成的html(或json对象)发送给事件处理程序。我的页面接收上传的文件,返回一个描述文件的json对象,例如文件名和唯一id,这样我就可以将主页上发布的数据链接到上传的文件。

    为了安全起见,我存储了上传文件的用户的凭据,这样当表单被发布时,我就可以验证发布表单的用户确实是上传了文件的用户。

        3
  •  0
  •   Frank Myat Thu    14 年前

    我试过如下。它正在工作。

    <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="conditional">
    <ContentTemplate>
    <asp:FileUpload ID="FileUpload1" runat="server" />
    <asp:Button ID="Upload" runat="server" Text="Upload" OnClick="Upload_Click" /><br />
    <asp:Image ID="NormalImage" runat="server" /></ContentTemplate>
    <Triggers>
    <asp:PostBackTrigger ControlID="Upload" />
    </Triggers>
    </asp:UpdatePanel>
    

    参考

    http://www.c-sharpcorner.com/uploadfile/prathore/fileupload-control-in-update-panel-using-Asp-Net-ajax/

        4
  •  0
  •   Nitika Chopra    8 年前

    你可以试试这段代码。我试过了,它对我有利。

    <asp:ScriptManager runat="server" />
    <asp:UpdatePanel ID="UpdatePanel1" runat="server" >
    <ContentTemplate>
    <div>
    <asp:FileUpload ID="FileUpload1" runat="server" /> <br/>
    <asp:Button ID="btn_Upload" runat="server" Text="Save" OnClick="btn_Upload_Click" /><br />
    </div>
    </ContentTemplate>
    <Triggers>
    <asp:PostBackTrigger ControlID="btn_Upload" />
    </Triggers>
    </asp:UpdatePanel>