谁看一下这是什么原因,问题解决立即结帐

userxk 2004-11-04 04:25:11
下面这段代码是用来动态增加多组图片上传数据的,每组数据包括一个TextBox(图片标题)、HtmlInputFile(选择上传图片)、Image(浏览

选择的图片)。
static int control_id = 0;
static int row_id = 0;
if(!Page.IsPostBack)
{
Session["tr"]=new ArrayList();
}

private void btnImgAdd_Click(object sender, System.EventArgs e)
{
TableRow tr = new TableRow();
tr.ID = "TabNum_" + row_id.ToString();
TableCell tc = new TableCell();
TextBox lt = new TextBox();
lt.ID = "TextNum_" + control_id.ToString();
tc.Controls.Add(lt);
tc.BorderWidth = 1;
tc.HorizontalAlign = HorizontalAlign.Center;
tc.Font.Bold = true;
tr.Cells.Add(tc);
Table1.Rows.Add(tr);

((ArrayList)Session["tr"]).Add(tr);

row_id++;
tr = new TableRow();
tr.ID = "TabNum_" + row_id.ToString();
tc = new TableCell();
HtmlInputFile fi = new HtmlInputFile();
fi.ID = "FileNum_" + control_id.ToString();


tc.Controls.Add(fi);
tc.BorderWidth = 1;
tc.HorizontalAlign = HorizontalAlign.Center;
tc.Font.Bold = true;
tr.Cells.Add(tc);
Table1.Rows.Add(tr);

((ArrayList)Session["tr"]).Add(tr);

row_id++;
tr = new TableRow();
tr.ID = "TabNum_" + row_id.ToString();
tc = new TableCell();
System.Web.UI.WebControls.Image ig = new System.Web.UI.WebControls.Image();
ig.ID = "ImgNum_" + control_id.ToString();


tc.Controls.Add(ig);
tc.BorderWidth = 1;
tc.HorizontalAlign = HorizontalAlign.Center;
tc.Font.Bold = true;
tr.Cells.Add(tc);
Table1.Rows.Add(tr);
((ArrayList)Session["tr"]).Add(tr);
fi.Attributes["onpropertychange"] = String.Format("javascript:document.getElementById

('{0}').src=this.value;", ig.ClientID);
foreach(TableRow row in (ArrayList)Session["tr"])
{
Table1.Rows.Add(row);
}
row_id++;
control_id++;
}

//增加两组的情况,一切正常
<table id="Table1" border="0">
<tr id="TabNum_21">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_7"

type="text" id="TextNum_7" /></td>
</tr><tr id="TabNum_22">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_7"

id="FileNum_7" type="file" onpropertychange="javascript:document.getElementById('ImgNum_7').src=this.value;" /></td>
</tr><tr id="TabNum_23">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_7"

border="0" /></td>
</tr><tr id="TabNum_24">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_8"

type="text" id="TextNum_8" /></td>
</tr><tr id="TabNum_25">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_8"

id="FileNum_8" type="file" onpropertychange="javascript:document.getElementById('ImgNum_8').src=this.value;" /></td>
</tr><tr id="TabNum_26">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_8"

border="0" /></td>
</tr>
</table>


//增加三组的情况,onpropertychange="javascript:document.getElementById('ImgNum_8')重复
<table id="Table1" border="0">
<tr id="TabNum_21">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_7"

type="text" id="TextNum_7" /></td>
</tr><tr id="TabNum_22">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_7"

id="FileNum_7" type="file" onpropertychange="javascript:document.getElementById('ImgNum_8').src=this.value;" /></td>
</tr><tr id="TabNum_23">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_7"

border="0" /></td>
</tr><tr id="TabNum_24">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_8"

type="text" id="TextNum_8" /></td>
</tr><tr id="TabNum_25">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_8"

id="FileNum_8" type="file" onpropertychange="javascript:document.getElementById('ImgNum_8').src=this.value;" /></td>
</tr><tr id="TabNum_26">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_8"

border="0" /></td>
</tr><tr id="TabNum_27">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_9"

type="text" id="TextNum_9" /></td>
</tr><tr id="TabNum_28">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_9"

id="FileNum_9" type="file" onpropertychange="javascript:document.getElementById('ImgNum_9').src=this.value;" /></td>
</tr><tr id="TabNum_29">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_9"

border="0" /></td>
</tr>
</table>

//增加四组的情况,onpropertychange="javascript:document.getElementById('ImgNum_9')重复
<table id="Table1" border="0">
<tr id="TabNum_21">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_7"

type="text" id="TextNum_7" /></td>
</tr><tr id="TabNum_22">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_7"

id="FileNum_7" type="file" onpropertychange="javascript:document.getElementById('ImgNum_8').src=this.value;" /></td>
</tr><tr id="TabNum_23">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_7"

border="0" /></td>
</tr><tr id="TabNum_24">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_8"

type="text" id="TextNum_8" /></td>
</tr><tr id="TabNum_25">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_8"

id="FileNum_8" type="file" onpropertychange="javascript:document.getElementById('ImgNum_9').src=this.value;" /></td>
</tr><tr id="TabNum_26">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_8"

border="0" /></td>
</tr><tr id="TabNum_27">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_9"

type="text" id="TextNum_9" /></td>
</tr><tr id="TabNum_28">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_9"

id="FileNum_9" type="file" onpropertychange="javascript:document.getElementById('ImgNum_9').src=this.value;" /></td>
</tr><tr id="TabNum_29">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_9"

border="0" /></td>
</tr><tr id="TabNum_30">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="TextNum_10"

type="text" id="TextNum_10" /></td>
</tr><tr id="TabNum_31">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><input name="FileNum_10"

id="FileNum_10" type="file" onpropertychange="javascript:document.getElementById('ImgNum_10').src=this.value;" /></td>
</tr><tr id="TabNum_32">
<td align="Center" style="border-width:1px;border-style:solid;font-weight:bold;"><img id="ImgNum_10"

border="0" /></td>
</tr>
</table>
...全文
246 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
噯卟釋手 2004-11-05
  • 打赏
  • 举报
回复
头晕了 友情UP一下
adminyao 2004-11-05
  • 打赏
  • 举报
回复
友情UP一下
Truly 2004-11-05
  • 打赏
  • 举报
回复
好长
userxk 2004-11-04
  • 打赏
  • 举报
回复
我的图片其实是存入数据库,而不是上传到文件夹。
userxk 2004-11-04
  • 打赏
  • 举报
回复
如果是固定图片上传组数到是很好做,但是动态的就麻烦了。
userxk 2004-11-04
  • 打赏
  • 举报
回复
主要是还有:每组图片要带相应的图片文字说明,每选中一张图片,在它下面有相应的图片预览。
孟子E章 2004-11-04
  • 打赏
  • 举报
回复
http://dotnet.aspx.cc/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C

在ASP.NET中实现多文件上传
userxk 2004-11-04
  • 打赏
  • 举报
回复
各位能说一下你们的多组图片上传是怎么做的吗?
userxk 2004-11-04
  • 打赏
  • 举报
回复
谁能给一个多组图片上传的好方法吗(能动态增减)?
要求:每组图片带相应的标题,每选中一张图片,在它下面有相应的图片预览。
userxk 2004-11-04
  • 打赏
  • 举报
回复
xiaohutushen(xiaohutushen) 能给一个好方法吗?
昨今明2017 2004-11-04
  • 打赏
  • 举报
回复
up
xiaohutushen 2004-11-04
  • 打赏
  • 举报
回复
增加这个最好用脚本实现。
yichuan1982 2004-11-04
  • 打赏
  • 举报
回复
up
luaiping 2004-11-04
  • 打赏
  • 举报
回复
没看大明白,但是发现一个问题
row_id++;
tr = new TableRow();
tr.ID = "TabNum_" + row_id.ToString();
tc = new TableCell();
HtmlInputFile fi = new HtmlInputFile();
fi.ID = "FileNum_" + control_id.ToString();


tc.Controls.Add(fi);
tc.BorderWidth = 1;
tc.HorizontalAlign = HorizontalAlign.Center;
tc.Font.Bold = true;
tr.Cells.Add(tc);
Table1.Rows.Add(tr);
这里已经加载过一次,
foreach(TableRow row in (ArrayList)Session["tr"])
{
Table1.Rows.Add(row);
}这里又加载了一次???
as12a 2004-11-04
  • 打赏
  • 举报
回复
碰到过一次
document.getElementById('1'),得到的却是id为1Top的元素
把ID改成div1就没问题了,到底为什么现在也不知道
没看你的代码,试着换个ID试试
userxk 2004-11-04
  • 打赏
  • 举报
回复
简单说就是:
onpropertychange="javascript:document.getElementById('ImgNum_8').src=this.value;" /></td>
里的Image的ID值不正常,如上面的getElementById('ImgNum_8')。

zhaolee 2004-11-04
  • 打赏
  • 举报
回复
代碼太多了,描述一下問題呀。
fangwancong 2004-11-04
  • 打赏
  • 举报
回复
同意,好晕吖~~~
flysheep412 2004-11-04
  • 打赏
  • 举报
回复
好多啊,看的头晕晕,楼主还是简单说一下你的问题所在吧

62,046

社区成员

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

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

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

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