紧急求助!在线等!问题解决马上给分。关于多文件上传问题

windstore 2007-08-15 06:15:30
我用js在前台页面动态添加多个<input type="file"> 为什么在CS页面只能获取第一个file呢?

前台代码如下:
<body>
<form id="form1" method="post" enctype="multipart/form-data" runat="server">
<div>
<table width="319" height="38" border="0" cellpadding="0" cellspacing="0">
<tr>
<td height="32">
<label><a>添加文件</a></label>
</td>
<td height="32" id="td1">
<input type="file" name="file0" id="file0" style="z-index=-1" onchange="javascript:onchangeFile()"/>
</td>
</tr>
</table>
</form>
</body>

cs页面代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(AJax_CommonFileUpLoad));
}
if (IsPostBack)
{
UpLoad();

}
}
protected void UpLoad()
{
string[] sdr = Request.Files.AllKeys;
foreach (string str in sdr)
{
Response.Write(str+"<br>");
}
HttpFileCollection files = HttpContext.Current.Request.Files;
Response.Write(files.Count);
}

js代码如下:
var td=document.getElementById("td1");
number+=1;
td.innerHTML+="<input type=\"file\" id=\"file"+number+"\" onchange='javascript:onchangeFile()'>";
...全文
170 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
windstore 2007-08-15
  • 打赏
  • 举报
回复
我晕。。。果然是这个问题。。。我没有添加name属性。。难道光有ID还不能识别么? 谢谢foyuan(暴走零零漆),我搞了一下午快崩溃拉。。。。

搞定了
foyuan 2007-08-15
  • 打赏
  • 举报
回复
js
添加的时候

要给每个file添加不同的name 否则可能只有1个
foyuan 2007-08-15
  • 打赏
  • 举报
回复
不用控件也可以

用HTML file

后台循环一下

for(int i=0;i<Request.PostFiles.length;i++){
Reqeust.PostFiles[i].SaveAs()
}

拼写纯属胡写 基本就这个意思 肯定能实现的
windstore 2007-08-15
  • 打赏
  • 举报
回复
Response.Write(files.Count); 总是1
Response.Write(str+"<br>"); 总是file0 也就是不是动态添加的那个file

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧