我有一个asp .net web表单,在这里我使用Ajax asyncFileUpload1,所以当我浏览图像时,它会触发一个函数并上传文件。
现在,当文件被上传时,我想在同一个页面上创建另一个asyncFileUpload2。但这不管用。
这工作
<div id="divform" runat="server">
</div>
<div id="divform2" runat="server">
</div>
<asp:Button ID="btnAddFileUpload" runat="server" Text="add" Visible="false" OnClick="btnAddFileUpload_Click" />
**On Backend server side:**
protected void btnAddFileUpload_Click(object sender, EventArgs e)
{
AsyncFileUpload AsyncFileUpload1 = new AsyncFileUpload();
AsyncFileUpload1.UploadedComplete += new EventHandler<AsyncFileUploadEventArgs>(AsyncFileUpload1_UploadedComplete);
divform.Controls.Add(AsyncFileUpload1);
AsyncFileUpload AsyncFileUpload2 = new AsyncFileUpload();
AsyncFileUpload2.UploadedComplete += new EventHandler<AsyncFileUploadEventArgs>(AsyncFileUpload2_UploadedComplete);
divform2.Controls.Add(AsyncFileUpload2);
}但是我不想这样,所以我删除了Add按钮,在页面加载时,我动态地创建了第一个AsyncFilepUpload1按钮。起作用了。一旦我浏览了一个文件,在它上传之后,应该创建另一个AsyncFileUpload2。但是文件是在没有创建fileUpload2按钮的情况下上传的,代码不会抛出任何错误。
,这不工作,
<div id="divform" runat="server">
</div>
<div id="divform2" runat="server">
</div>
**On backend server side**
protected void Page_Load(object sender, EventArgs e)
{
AsyncFileUpload AsyncFileUpload1 = new AsyncFileUpload();
AsyncFileUpload1.UploadedComplete += new EventHandler<AsyncFileUploadEventArgs>(AsyncFileUpload1_UploadedComplete);
divform.Controls.Add(AsyncFileUpload1);
}
void AsyncFileUpload1_UploadedComplete(object sender, AsyncFileUploadEventArgs e)
{
string filename = System.IO.Path.GetFileName(e.FileName);
string savePath = MapPath("Upload/" + filename + DateTime.Now.ToString("MM_dd_yyyy_HH_mm"));
((AsyncFileUpload)sender).SaveAs(savePath);
AsyncFileUpload AsyncFileUpload2 = new AsyncFileUpload();
AsyncFileUpload2.UploadedComplete += new EventHandler<AsyncFileUploadEventArgs>(AsyncFileUpload2_UploadedComplete);
divform2.Controls.Add(AsyncFileUpload2);
}发布于 2022-07-01 22:31:53
那么,为什么不使用一个相同的上负载控制呢?
既然你迈出了巨大的一步,跳,跳,并愿意努力采用ajaxtool?
那么为什么不使用AjaxfileUploader来代替AsyncFileUpload呢?
它允许1或20个文件。它播放了一个很好的文件列表。允许用户轻松地添加更多文件。
允许用户从“向上加载”中删除文件。
总之,这是非常,但非常非常困难的情况下,你将需要附加,甚至两个上装载机在同一页。
放入AjaxFileUp-load,并使用它:
所以,我建了一个这样的页面:

因此,您不仅可以获得热点区域(在这里放置文件),而且可以自由地选择更多的文件--1、10或20。因此,您可以获得一个漂亮的文件类型,然后可以加载它们。
因此,在页面上增加一个文件加载控件是没有什么意义的。
让他们加载5或2或20个文件。然后,您可以在文件加载后为用户显示文件列表。
所以,提供一个选项卡或一个位置来加载文件--如果他们想要的话,他们可以再加载一些--但是再次,不知道如何或者为什么需要一个以上的文件加载控制系统?让他们查看他们的文件列表,如果他们想要-加载更多的文件-让他们也这样做。但是所有这类操作都应该很简单,当然不需要在给定页面上超过一个向上加载的控制系统。
https://stackoverflow.com/questions/72835013
复制相似问题