【问题标题】:FileUpload Using Ajax In ASP.NET With C#使用 C# 在 ASP.NET 中使用 Ajax 上传文件
【发布时间】:2025-12-20 01:05:12
【问题描述】:

我需要使用 FileUpload 上传图片而不使用回发(使用 Ajax)。我尝试了很多示例。但所有回发即将到来,或者他们正在使用 PHP。任何人都可以帮助我使用 ajax 进行单文件上传或多文件上传带有 C# 的 ASP.Net。

【问题讨论】:

    标签: javascript jquery ajax


    【解决方案1】:

    SWF上传

    http://demo.swfupload.org/v220beta3/simpledemo/index.php

    http://swfupload.org/

    Javascript 和 Flash,没有回发 :) 并且网站上有可用的 .NET 实现。

    【讨论】:

      【解决方案2】:

      【讨论】:

        【解决方案3】:

        正如其他人所说,如果没有回发,您无法完全做到这一点,但您可以在该过程中添加一些不错的 ajax 功能。史蒂夫桑德森在这里写了一个很好的演练:

        http://blog.codeville.net/2008/11/24/jquery-ajax-uploader-plugin-with-progress-bar/

        【讨论】:

        • 这是 SWF 上传的 MVC 实现,如果他使用的是目前大多数人使用的 WebForms,那么在移植逻辑时会遇到一些问题。
        【解决方案4】:

        我亲自使用过这个:Ajax Uploader - 请注意,这不是免费的,但相当不错。

        【讨论】:

          【解决方案5】:

          我也使用Ajax Uploader。它非常适合我的项目,它允许您在不刷新页面的情况下将文件上传到 Web 服务器。

          这是demo page

          【讨论】:

            【解决方案6】:

            没有 ajax 文件上传之类的东西。您看到的组件要么使用 Flash swfupload,要么使用隐藏的 iframe,它们向其发布表单,给人以 ajax 方式发生的印象。有许多插件可以帮助您做到这一点。我最喜欢的是this,它使用了 jquery 和 swfupload

            【讨论】:

              【解决方案7】:

              您无法通过 JS 访问文件输入字段的内容。这是出于安全考虑。虽然您可以做的是创建一个 iframe 并从按钮仅提交该 iframe,该 iframe 再次可以包含您的文件输入字段...

              这会给 Ajax 文件上传控件的“印象”...

              【讨论】:

                【解决方案8】:

                正如其他人所说,文件上传需要回发。在任何更新面板中,您应该将文件上传控件注册为脚本管理器的回发控件。您也可以look telerik upload control 了解它应该是什么。

                【讨论】: