在ASP.NET中执行文件上载而不显示上载控件

在ASP.NET中执行文件上载而不显示上载控件,asp.net,file-upload,Asp.net,File Upload,我正在使用VS2010,C#开发一个ASP.NET web应用程序,我想在用户单击超链接(或标签,没有区别)时显示一个文件上载控件,然后应该执行上载操作,我使用上载控件没有问题,但目前我有一个不可见的上传控件,在我的hyperlink onclick函数中使用JavaScript显示它,上传控件被显示,但我不知道如何获取上传的文件,我应该如何执行此操作?当我的用户单击标签或超链接时,我想显示“上载文件”对话框,然后他们可以选择他们的文件并上载该文件,最后我应该能够在服务器端处理该文件(我将获取文

我正在使用VS2010,C#开发一个ASP.NET web应用程序,我想在用户单击超链接(或标签,没有区别)时显示一个文件上载控件,然后应该执行上载操作,我使用上载控件没有问题,但目前我有一个不可见的上传控件,在我的hyperlink onclick函数中使用JavaScript显示它,上传控件被显示,但我不知道如何获取上传的文件,我应该如何执行此操作?当我的用户单击标签或超链接时,我想显示“上载文件”对话框,然后他们可以选择他们的文件并上载该文件,最后我应该能够在服务器端处理该文件(我将获取文件流并将其存储在SQL中),我的选项是什么?JQuery?AJAXJavaScript?还是别的什么

我的JavaScript函数:

function OpenFile()
{
document.getElementById("<%=fu.ClientID%>").style.display="";
var result = document.getElementById("<%=fu.ClientID%>").click();
document.getElementById("<%=fu.ClientID%>").style.display="none";
return false;
}
函数OpenFile() { document.getElementById(“”.style.display=“”; var result=document.getElementById(“”)。单击(); document.getElementById(“”.style.display=“无”; 返回false; } 和我的标记:

<asp:FileUpload ..... style="display:none;"....>
    <ASP:hyperlink onclick="OpenFile();"...../>

选择文件并执行
回发后,您可以按如下方式访问该文件

<asp:FileUpload ID="FileUpload1" ..... style="display:none;"....>
或者只需将其保存在服务器上:

FileUpload1.SaveAs(savePath);

我想推荐,它是用flash构建的。使用jQuery和asp.net非常简单易用

Demo依靠php进行上传,尽管它可以用于包括asp.net在内的任何平台。 您必须编写一个处理程序文件来执行上载、流式处理和sql存储部分

检查这些答案

  • 作者@Zitun
  • 作者@Blankasaurus

具有隐藏控件并在单击时显示它应该可以工作。显示您的代码。是的,会显示上载对话框,但我不知道如何获取上载的文件信息。您的问题是如何使用asp.net文件上载控件?我在问题中插入了我的代码,我知道如何使用文件上载控件上载文件,而我想知道在这种情况下如何获取上载的文件,当我正常使用文件上传控制时,我使用一个执行回发的提交按钮,并将我上传的文件插入SQL,但我不知道如何获取发布的文件,我应该在JavaScript函数上进行回发吗?谢谢,但在上传对话框关闭后,我如何进行回发?您必须在对话框上有一个按钮才能关闭。只需回发该按钮(确保它是服务器控件)。点击该按钮进行保存
FileUpload1.SaveAs(savePath);